With NAT enabled, the router will modify the IP header in outgoing packets so that the source address matches your Internet public address (and vice versa for incoming packets).
If you disable NAT, it won’t do that anymore. So, basically, you will be sending IP packets with private source IP address (e.g. 192.168.x.y) on the Internet, which of course will automatically get rejected by your ISP.
NAT is what lets you use internal-only IP subnets, e.g., 192.168.0.*. While routing, the router will substitute its address for the internal-only address. Unless you have a subnet of real IP addresses available to you, don’t turn off NAT.
It can be very useful if you have several routers connected in cascade. This can be interesting for example if you have several wired devices connected to a router in a room, and some others connected to another router in a different room, or if you want to have several WiFi access points in different rooms using different routers. Disabling NAT in the second and lower level routers will make all the devices to be visible between them and share the same subnetwork as if they were all connected to the “top” router. If you don’t disable NAT in these routers, the devices connected to the second level routers will see those in the first level through their particular internal IP, but this won’t be the case in the other direction.
If you turn off NAT it will also turn off DHCP allocation, the router will expect the upstream to be providing IP addresses. In most cases this will only work for one IP address, although a lot of ISPs let you buy more IP addresses off them. Turning it off is only useful in that situation, or in the case you have another router downstream which will allocate DHCP addresses to your wider network. Or if you just own one computer.