Function at 0x404244
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x14
call fcn.005cb7e7
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
push 0x6c
call fcn.005cb7e7
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1b
rep stosd dword es:[edi], eax
add ebx, 0x68
push ebx
push 0x88
call fcn.005cb7e7
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x678958
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x20
rep stosd dword es:[edi], eax
mov dword [ebp - 0x24], 0
push 8
call fcn.005cb7e7
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x678929
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x2c], 0
push 8
call fcn.005cb7e7
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x678929
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov ebx, dword [0x7dc87c]
call fcn.00403ea1
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x4079bc
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x4079b9
cmp dword [ebp - 4], 1
jne 0x404381
mov eax, str.ntdll.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x404378
push ebx
call fcn.005cb7e1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4043d8
cmp dword [ebp - 4], 2
jne 0x4043aa
mov eax, 0x678941
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4043a1
push ebx
call fcn.005cb7e1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4043d8
cmp dword [ebp - 4], 3
jne 0x4043d3
mov eax, str.gdi32.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4043ca
push ebx
call fcn.005cb7e1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x4043d8
jmp 0x4079bc
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 1
lea eax, [ebp - 8]
push eax
call fcn.00407b07
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x3c], 0
push 0
lea eax, [ebp - 0x3c]
push eax
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
call fcn.00408c7c
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x404426
push ebx
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x404436
push ebx
call fcn.005cb7e1
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40444a
push ebx
call fcn.005cb7e1
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.00408d9b
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x678956
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.0040111d
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x404481
push ebx
call fcn.005cb7e1
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 6
call fcn.005cb7f3
cmp dword [ebp - 0x44], esp
je 0x4044b5
push 0x254
push 0x4024d90
push 6
call fcn.005cb7ed
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4044c5
push ebx
call fcn.005cb7e1
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4044d8
mov eax, 0x67883c
push eax
push 1
mov ebx, 0x5ce9a0
call fcn.005cb7f9
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x404502
push ebx
call fcn.005cb7e1
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00408e4c
mov dword [ebp - 0x1c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x404525
mov eax, 0x67883c
push eax
push 1
mov ebx, 0x5ce960
call fcn.005cb7f9
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.00408e70
test eax, eax
je 0x40456e
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x40456e
mov eax, 1
jmp 0x404573
mov eax, 0
test eax, eax
je 0x4079b2
mov dword [ebp - 0x24], 0
mov ebx, dword [ebp - 0x20]
add ebx, 0x3c
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
push 0x2000
push 0x1000
call fcn.00409211
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], esp
push 0x40
push dword [ebp - 0x50]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push 0
push 0xffffffff
mov eax, 7
call fcn.005cb7f3
cmp dword [ebp - 0x54], esp
je 0x40460d
push 0x40d
push 0x4024d90
push 6
call fcn.005cb7ed
add esp, 0xc
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
add ebx, 0x40
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call fcn.00409234
push 8
call fcn.005cb7e7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x678929
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x1c]
call fcn.00409361
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.005cb7e1
add esp, 4
mov eax, dword [ebp - 0x40]
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x4047da
mov ebx, dword [ebp - 0x28]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4046b2
push 0x4f4
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4046cf
push 0x4f4
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
push dword [ebp - 0x24]
call fcn.0040382c
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40471f
push 0x525
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40473c
push 0x525
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x48]
push dword [ebx]
push dword [ebp - 0x1c]
call fcn.0040382c
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40478c
push 0x525
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4047a9
push 0x525
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], 0
push 0
push dword [ebp - 0x58]
mov ebx, dword [ebp - 0x54]
push dword [ebx]
push dword [ebp - 0x50]
push dword [ebp - 0x44]
call fcn.00409234
pop eax
pop ebx
pop ecx
jmp 0x40467d
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.00409960
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x404808
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x404804
imul eax, dword [ebx]
jmp 0x4047f9
mov ecx, eax
test ecx, ecx
je 0x404830
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.005cb7e1
add esp, 4
pop ebx
call fcn.005cb7e1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40480e
call fcn.005cb7e1
add esp, 4
mov eax, 0x678929
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.0040a885
xor ecx, ecx
push eax
lea eax, [ebp - 0x2c]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x407996
cmp dword [ebp - 4], 1
jne 0x4049a7
mov ebx, dword [ebp - 0x30]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x404894
push 0x682
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4048b1
push 0x682
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 1
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x4048df
mov eax, 0x67883c
push eax
push 2
mov ebx, 0x5cc600
call fcn.005cb7f9
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x404995
mov ebx, dword [ebp - 0x30]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x404926
push 0x6d1
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x404943
push 0x6d1
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x4c], ebx
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_connect
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x404971
mov eax, 0x67883c
push eax
push 2
mov ebx, 0x5cc600
call fcn.005cb7f9
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x404995
xor eax, eax
jmp 0x40499a
mov eax, 1
test eax, eax
je 0x4049a7
jmp 0x40798e
mov ebx, dword [ebp - 0x30]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4049ce
push 0x77d
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4049eb
push 0x77d
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.005cb7e7
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x678929
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x40]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x3c]
push dword [ebx]
call fcn.0040b49b
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.005cb7e1
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x404a85
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0
cmp eax, ecx
jl 0x404a6d
push 0x7b7
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x404a85
mov eax, 1
jmp 0x404a8a
mov eax, 0
test eax, eax
je 0x40798e
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x404ac2
push 0x7e2
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x404adf
push 0x7e2
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x404b0a
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x404b1d
push ebx
call fcn.005cb7e1
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
add ebx, 8
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x404b69
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x404b9d
and eax, 0xff
jmp 0x404bf2
cmp ecx, 0x80000201
jne 0x404ba8
cwde
jmp 0x404bf2
cmp ecx, 0x80000301
je 0x404bf2
cmp ecx, 0x80000401
je 0x404bf2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404be2
cmp ecx, 0x80000601
je 0x404be7
push 0x86a
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404bed
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x7dc880]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x404c2e
mov ebx, dword [0x7dc880]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x404c2e
mov eax, 1
jmp 0x404c33
mov eax, 0
test eax, eax
je 0x405374
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 9
cmp eax, ecx
jl 0x404c63
push 0x94a
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x404cb4
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xa
cmp eax, ecx
jl 0x404c9c
push 0x973
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x404cb4
mov eax, 1
jmp 0x404cb9
mov eax, 0
test eax, eax
je 0x40536f
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x404ce9
push 0x9bf
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404e77
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x404d2e
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x404d62
and eax, 0xff
jmp 0x404db7
cmp ecx, 0x80000201
jne 0x404d6d
cwde
jmp 0x404db7
cmp ecx, 0x80000301
je 0x404db7
cmp ecx, 0x80000401
je 0x404db7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404da7
cmp ecx, 0x80000601
je 0x404dac
push 0xa0b
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404db2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x404e03
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404e5f
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x404e9f
push 0xa7b
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404f6b
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x404ef7
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x404f53
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x404f93
push 0xaf0
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x40536f
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.0040382c
mov dword [ebp - 0x38], eax
push 0x80000301
push 0
push 0xd
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x404feb
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x40502b
and eax, 0xff
jmp 0x405080
cmp ecx, 0x80000201
jne 0x405036
cwde
jmp 0x405080
cmp ecx, 0x80000301
je 0x405080
cmp ecx, 0x80000401
je 0x405080
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405070
cmp ecx, 0x80000601
je 0x405075
push 0xb89
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40507b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
push eax
push dword [ebp - 0x38]
call fcn.0040382c
mov dword [ebp - 0x38], eax
push 8
call fcn.005cb7e7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x678929
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x3c]
push eax
push 0x20
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x38]
call fcn.0040b49b
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0
cmp eax, ecx
jl 0x4050f2
push 0xc2c
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405280
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405137
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x40516b
and eax, 0xff
jmp 0x4051c0
cmp ecx, 0x80000201
jne 0x405176
cwde
jmp 0x4051c0
cmp ecx, 0x80000301
je 0x4051c0
cmp ecx, 0x80000401
je 0x4051c0
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4051b0
cmp ecx, 0x80000601
je 0x4051b5
push 0xc78
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4051bb
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40520c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405268
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0
cmp eax, ecx
jl 0x4052a8
push 0xce8
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40536f
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405300
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40535c
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
jmp 0x40798e
mov ebx, dword [0x7dc880]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x4071ad
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x4053c6
push 0xe29
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x405450
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xa
cmp eax, ecx
jl 0x4053ff
push 0xe52
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x405450
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x405438
push 0xe7b
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xd2
jne 0x405450
mov eax, 1
jmp 0x405455
mov eax, 0
test eax, eax
je 0x405702
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xc
cmp eax, ecx
jl 0x405485
push 0xec7
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405613
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4054ca
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x4054fe
and eax, 0xff
jmp 0x405553
cmp ecx, 0x80000201
jne 0x405509
cwde
jmp 0x405553
cmp ecx, 0x80000301
je 0x405553
cmp ecx, 0x80000401
je 0x405553
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405543
cmp ecx, 0x80000601
je 0x405548
push 0xf13
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40554e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40559f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4055fb
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xc
cmp eax, ecx
jl 0x40563b
push 0xf83
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x405702
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405693
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4056ef
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x40572a
push 0x103a
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x4057b4
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 6
cmp eax, ecx
jl 0x405763
push 0x1063
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x4057b4
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 8
cmp eax, ecx
jl 0x40579c
push 0x108c
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x4057b4
mov eax, 1
jmp 0x4057b9
mov eax, 0
test eax, eax
je 0x405a66
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xc
cmp eax, ecx
jl 0x4057e9
push 0x10d8
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405977
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40582e
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405862
and eax, 0xff
jmp 0x4058b7
cmp ecx, 0x80000201
jne 0x40586d
cwde
jmp 0x4058b7
cmp ecx, 0x80000301
je 0x4058b7
cmp ecx, 0x80000401
je 0x4058b7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4058a7
cmp ecx, 0x80000601
je 0x4058ac
push 0x1124
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4058b2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405903
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40595f
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xc
cmp eax, ecx
jl 0x40599f
push 0x1194
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x405a66
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4059f7
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405a53
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x405a8e
push 0x1255
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x405b18
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 7
cmp eax, ecx
jl 0x405ac7
push 0x127e
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x405b18
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x405b00
push 0x12a7
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x405b18
mov eax, 1
jmp 0x405b1d
mov eax, 0
test eax, eax
je 0x405fca
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x12
cmp eax, ecx
jl 0x405b4d
push 0x12fb
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x405b9b
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x405b86
push 0x1324
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x405b9b
xor eax, eax
jmp 0x405ba0
mov eax, 1
test eax, eax
je 0x405c63
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405bef
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405c4b
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x12
cmp eax, ecx
jl 0x405c8b
push 0x1396
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405e19
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405cd0
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405d04
and eax, 0xff
jmp 0x405d59
cmp ecx, 0x80000201
jne 0x405d0f
cwde
jmp 0x405d59
cmp ecx, 0x80000301
je 0x405d59
cmp ecx, 0x80000401
je 0x405d59
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405d49
cmp ecx, 0x80000601
je 0x405d4e
push 0x13e2
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405d54
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405da5
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405e01
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x405e41
push 0x1452
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x405fca
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x405e86
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x405eba
and eax, 0xff
jmp 0x405f0f
cmp ecx, 0x80000201
jne 0x405ec5
cwde
jmp 0x405f0f
cmp ecx, 0x80000301
je 0x405f0f
cmp ecx, 0x80000401
je 0x405f0f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x405eff
cmp ecx, 0x80000601
je 0x405f04
push 0x149e
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405f0a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x405f5b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x405fb7
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x405ff2
push 0x156f
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x40607c
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 9
cmp eax, ecx
jl 0x40602b
push 0x1598
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x40607c
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x406064
push 0x15c1
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40607c
mov eax, 1
jmp 0x406081
mov eax, 0
test eax, eax
je 0x40652e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x12
cmp eax, ecx
jl 0x4060b1
push 0x1615
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4060ff
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x4060ea
push 0x163e
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4060ff
xor eax, eax
jmp 0x406104
mov eax, 1
test eax, eax
je 0x4061c7
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x406153
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4061af
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x12
cmp eax, ecx
jl 0x4061ef
push 0x16b0
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40637d
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x14
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x406234
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x406268
and eax, 0xff
jmp 0x4062bd
cmp ecx, 0x80000201
jne 0x406273
cwde
jmp 0x4062bd
cmp ecx, 0x80000301
je 0x4062bd
cmp ecx, 0x80000401
je 0x4062bd
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4062ad
cmp ecx, 0x80000601
je 0x4062b2
push 0x16fc
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4062b8
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x406309
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406365
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x4063a5
push 0x176c
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40652e
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4063ea
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x40641e
and eax, 0xff
jmp 0x406473
cmp ecx, 0x80000201
jne 0x406429
cwde
jmp 0x406473
cmp ecx, 0x80000301
je 0x406473
cmp ecx, 0x80000401
je 0x406473
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406463
cmp ecx, 0x80000601
je 0x406468
push 0x17b8
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40646e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4064bf
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40651b
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x406556
push 0x1887
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x4065e0
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xa
cmp eax, ecx
jl 0x40658f
push 0x18b0
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x4065e0
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xe
cmp eax, ecx
jl 0x4065c8
push 0x18d9
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4065e0
mov eax, 1
jmp 0x4065e5
mov eax, 0
test eax, eax
je 0x406b6b
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x406621
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x406655
and eax, 0xff
jmp 0x4066aa
cmp ecx, 0x80000201
jne 0x406660
cwde
jmp 0x4066aa
cmp ecx, 0x80000301
je 0x4066aa
cmp ecx, 0x80000401
je 0x4066aa
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40669a
cmp ecx, 0x80000601
je 0x40669f
push 0x1926
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4066a5
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x4066d7
push 0x1978
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x406725
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x18
cmp eax, ecx
jl 0x406710
push 0x19a1
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x406725
xor eax, eax
jmp 0x40672a
mov eax, 1
test eax, eax
je 0x4067ed
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x406779
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4067d5
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x406815
push 0x1a13
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4069a3
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40685a
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x40688e
and eax, 0xff
jmp 0x4068e3
cmp ecx, 0x80000201
jne 0x406899
cwde
jmp 0x4068e3
cmp ecx, 0x80000301
je 0x4068e3
cmp ecx, 0x80000401
je 0x4068e3
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4068d3
cmp ecx, 0x80000601
je 0x4068d8
push 0x1a5f
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4068de
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40692f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40698b
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x18
cmp eax, ecx
jl 0x4069cb
push 0x1acf
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406b59
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x406a10
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x406a44
and eax, 0xff
jmp 0x406a99
cmp ecx, 0x80000201
jne 0x406a4f
cwde
jmp 0x406a99
cmp ecx, 0x80000301
je 0x406a99
cmp ecx, 0x80000401
je 0x406a99
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406a89
cmp ecx, 0x80000601
je 0x406a8e
push 0x1b1b
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x406a94
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x406ae5
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406b41
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x406b93
push 0x1c0c
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x406c1d
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 9
cmp eax, ecx
jl 0x406bcc
push 0x1c35
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x406c1d
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xe
cmp eax, ecx
jl 0x406c05
push 0x1c5e
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x406c1d
mov eax, 1
jmp 0x406c22
mov eax, 0
test eax, eax
je 0x4071a8
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xb
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x406c5e
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x406c92
and eax, 0xff
jmp 0x406ce7
cmp ecx, 0x80000201
jne 0x406c9d
cwde
jmp 0x406ce7
cmp ecx, 0x80000301
je 0x406ce7
cmp ecx, 0x80000401
je 0x406ce7
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406cd7
cmp ecx, 0x80000601
je 0x406cdc
push 0x1cab
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x406ce2
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x406d14
push 0x1cfd
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x406d62
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x18
cmp eax, ecx
jl 0x406d4d
push 0x1d26
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x406d62
xor eax, eax
jmp 0x406d67
mov eax, 1
test eax, eax
je 0x406e2a
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x406db6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406e12
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x15
cmp eax, ecx
jl 0x406e52
push 0x1d98
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x406fe0
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x17
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x406e97
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x406ecb
and eax, 0xff
jmp 0x406f20
cmp ecx, 0x80000201
jne 0x406ed6
cwde
jmp 0x406f20
cmp ecx, 0x80000301
je 0x406f20
cmp ecx, 0x80000401
je 0x406f20
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x406f10
cmp ecx, 0x80000601
je 0x406f15
push 0x1de4
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x406f1b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x406f6c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406fc8
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0x18
cmp eax, ecx
jl 0x407008
push 0x1e54
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x407196
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x1a
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40704d
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x407081
and eax, 0xff
jmp 0x4070d6
cmp ecx, 0x80000201
jne 0x40708c
cwde
jmp 0x4070d6
cmp ecx, 0x80000301
je 0x4070d6
cmp ecx, 0x80000401
je 0x4070d6
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4070c6
cmp ecx, 0x80000601
je 0x4070cb
push 0x1ea0
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4070d1
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x407122
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40717e
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x4071d5
push 0x1f83
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x4075e0
push 0x80000301
push 0
push 7
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x407211
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x44]
cmp ecx, 0x80000101
jne 0x407245
and eax, 0xff
jmp 0x40729a
cmp ecx, 0x80000201
jne 0x407250
cwde
jmp 0x40729a
cmp ecx, 0x80000301
je 0x40729a
cmp ecx, 0x80000401
je 0x40729a
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x40728a
cmp ecx, 0x80000601
je 0x40728f
push 0x1fc6
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x407295
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.00401181
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x4072b8
cmp dword [ebp - 0x38], 0xa
jge 0x4072b8
mov eax, 1
jmp 0x4072bd
mov eax, 0
test eax, eax
je 0x4075db
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.0040382c
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x407308
push 0x20cd
push 0x4024d90
push 4
call fcn.005cb7ed
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x407325
push 0x20cd
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x4075db
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xa
cmp eax, ecx
jl 0x40735e
push 0x2119
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4074ec
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xc
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x4073a3
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x4073d7
and eax, 0xff
jmp 0x40742c
cmp ecx, 0x80000201
jne 0x4073e2
cwde
jmp 0x40742c
cmp ecx, 0x80000301
je 0x40742c
cmp ecx, 0x80000401
je 0x40742c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40741c
cmp ecx, 0x80000601
je 0x407421
push 0x2165
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407427
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x407478
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4074d4
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xa
cmp eax, ecx
jl 0x407514
push 0x21d5
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4075db
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40756c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4075c8
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 5
cmp eax, ecx
jl 0x407608
push 0x22c3
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x407659
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xa
cmp eax, ecx
jl 0x407641
push 0x22ec
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x407659
mov eax, 1
jmp 0x40765e
mov eax, 0
test eax, eax
je 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x40768e
push 0x233b
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x4076dc
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xb
cmp eax, ecx
jl 0x4076c7
push 0x2364
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x4076dc
xor eax, eax
jmp 0x4076e1
mov eax, 1
test eax, eax
je 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xc
cmp eax, ecx
jl 0x407711
push 0x23b0
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40789f
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0xe
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x407756
mov eax, 0x678929
push eax
push 3
mov ebx, 0x5cd600
call fcn.005cb7f9
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp ecx, 0x80000101
jne 0x40778a
and eax, 0xff
jmp 0x4077df
cmp ecx, 0x80000201
jne 0x407795
cwde
jmp 0x4077df
cmp ecx, 0x80000301
je 0x4077df
cmp ecx, 0x80000401
je 0x4077df
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4077cf
cmp ecx, 0x80000601
je 0x4077d4
push 0x23fc
push 0x4024d90
push 2
call fcn.005cb7ed
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4077da
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401181
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40782b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407887
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
mov ebx, dword [ebp - 0x34]
call fcn.004038b4
mov eax, 0xc
cmp eax, ecx
jl 0x4078c7
push 0x246c
push 0x4024d90
push 1
call fcn.005cb7ed
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40798e
push 0x7dc87c
push 4
mov eax, 2
call fcn.005cb7db
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x7dc87c]
mov dword [ebp - 0x40], ebx
call fcn.004038b4
mov dword [ebp - 0x44], ecx
mov edi, dword [ebp - 0x40]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40791f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x44]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x40]
call fcn.005cb805
add esp, 8
mov dword [0x7dc87c], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x44]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x3c]
push edi
push eax
push 0x14
call fcn.005cb7e7
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40797b
push eax
mov ebx, eax
call fcn.004010b2
inc eax
push eax
call fcn.005cb7e7
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
jmp 0x40798e
pop eax
pop ebx
pop ecx
jmp 0x404855
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.0040b595
pop ebx
pop ecx
jmp 0x40434a
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4079cc
push ebx
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4079e3
push ebx
call fcn.005cb7e1
add esp, 4
pop ebx
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4079fc
push ebx
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x407a0c
push ebx
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.005cb7e1
add esp, 4
pop ebx
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x407a46
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x407a42
imul eax, dword [ebx]
jmp 0x407a37
mov ecx, eax
test ecx, ecx
je 0x407a6e
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.005cb7e1
add esp, 4
pop ebx
call fcn.005cb7e1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407a4c
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x407a94
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x407a90
imul eax, dword [ebx]
jmp 0x407a85
mov ecx, eax
test ecx, ecx
je 0x407aeb
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407ab2
push ebx
call fcn.005cb7e1
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407ac6
push ebx
call fcn.005cb7e1
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407ada
push ebx
call fcn.005cb7e1
add esp, 4
pop ebx
call fcn.005cb7e1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407a9a
call fcn.005cb7e1
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x407b03
push ebx
call fcn.005cb7e1
add esp, 4
mov esp, ebp
pop ebp
ret