If the initial request exceeds the maximum segment size allowed, the request will have to be fragmented.
When the server receives the initial SYN with just the data and no FIN, depending on the time outs, it either responds with a SYNACK immediately or waits for the FIN bit to arrive before responding with the SYNACK that acknowledges all of the data.
The server then proceeds to send the multi-packet response if required.
win 14128 <mss 3544,nop,nop,cc 5> (DF)
localhost.2123 > localhost.8888: FP 2184278861:2184279329(468)
win 14128 <nop,nop,cc 5> (DF)
localhost.8888 > localhost.2123: S 1279030185:1279030185(0)
ack 2184278861 win 14096 <mss 3544,nop,nop,cc 6,nop,nop,ccecho 5>
localhost.2123 > localhost.8888: F 469:469(0) ack 1 win 14128
<nop,nop,cc 5> (DF)
localhost.8888 > localhost.2123: . ack 470 win 13627
<nop,nop,cc 6> (DF)
localhost.8888 > localhost.2123: FP 1:31(30) ack 470 win 13627
<nop,nop,cc 6> (DF)
localhost.2123 > localhost.8888: . ack 32 win 14128
<nop,nop,cc 5> (DF)