Function at 0x401e00
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.0040e6d7
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.0040e6d7
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.0040e6d7
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x4b610e
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.0040e6d7
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x4b60ce
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.0040e6d7
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x4b60ce
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 [0x5177e8]
call fcn.00401996
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x4051dc
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x4051d9
cmp dword [ebp - 4], 1
jne 0x401f3d
mov eax, str.ntdll.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x401f34
push ebx
call fcn.0040e6d1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x401f94
cmp dword [ebp - 4], 2
jne 0x401f66
mov eax, 0x4b60f9
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x401f5d
push ebx
call fcn.0040e6d1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x401f94
cmp dword [ebp - 4], 3
jne 0x401f8f
mov eax, str.gdi32.dll
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x401f86
push ebx
call fcn.0040e6d1
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x401f94
jmp 0x4051dc
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.004053c4
mov dword [ebp - 0x10], eax
push 0
push 0
push 0
push 1
mov ebx, 0x410100
call fcn.0040e6ef
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x401fdf
push ebx
call fcn.0040e6d1
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.004064d5
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push dword [ebp - 0x3c]
mov ecx, 2
call fcn.00401da4
add esp, 8
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x402011
push ebx
call fcn.0040e6d1
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 6
call fcn.0040e6e3
cmp dword [ebp - 0x44], esp
je 0x402045
push 0x2bf
push 0x401db43
push 6
call fcn.0040e6dd
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x402055
push ebx
call fcn.0040e6d1
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x402068
mov eax, 0x4b60d6
push eax
push 1
mov ebx, 0x410260
call fcn.0040e6ef
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x402092
push ebx
call fcn.0040e6d1
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00406585
mov dword [ebp - 0x1c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4020b5
mov eax, 0x4b60d6
push eax
push 1
mov ebx, 0x4100e0
call fcn.0040e6ef
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.004065aa
test eax, eax
je 0x4020fe
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x4020fe
mov eax, 1
jmp 0x402103
mov eax, 0
test eax, eax
je 0x4051d2
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.0040694b
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.0040e6e3
cmp dword [ebp - 0x54], esp
je 0x40219d
push 0x48a
push 0x401db43
push 6
call fcn.0040e6dd
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.0040696e
push 8
call fcn.0040e6d7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x4b60ce
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.00406a9b
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0040e6d1
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 0x40236a
mov ebx, dword [ebp - 0x28]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x402242
push 0x571
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40225f
push 0x571
push 0x401db43
push 1
call fcn.0040e6dd
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.00401959
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4022af
push 0x5a2
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4022cc
push 0x5a2
push 0x401db43
push 1
call fcn.0040e6dd
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.00401959
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40231c
push 0x5a2
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x402339
push 0x5a2
push 0x401db43
push 1
call fcn.0040e6dd
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.0040696e
pop eax
pop ebx
pop ecx
jmp 0x40220d
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.0040709a
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402398
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402394
imul eax, dword [ebx]
jmp 0x402389
mov ecx, eax
test ecx, ecx
je 0x4023c0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0040e6d1
add esp, 4
pop ebx
call fcn.0040e6d1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40239e
call fcn.0040e6d1
add esp, 4
mov eax, 0x4b60ce
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.00407fbf
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 0x4051c2
cmp dword [ebp - 4], 1
jne 0x402537
mov ebx, dword [ebp - 0x30]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x402424
push 0x712
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x402441
push 0x712
push 0x401db43
push 1
call fcn.0040e6dd
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 getpeername
push 0
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebx]
test eax, eax
jne 0x40246f
mov eax, 0x4b60d6
push eax
push 2
mov ebx, 0x40ed00
call fcn.0040e6ef
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x402525
mov ebx, dword [ebp - 0x30]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x4024b6
push 0x761
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4024d3
push 0x761
push 0x401db43
push 1
call fcn.0040e6dd
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 getpeername
push 0
mov ebx, dword [ebp - 0x4c]
mov eax, dword [ebx]
test eax, eax
jne 0x402501
mov eax, 0x4b60d6
push eax
push 2
mov ebx, 0x40ed00
call fcn.0040e6ef
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x402525
xor eax, eax
jmp 0x40252a
mov eax, 1
test eax, eax
je 0x402537
jmp 0x4051ba
mov ebx, dword [ebp - 0x30]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40255e
push 0x80d
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40257b
push 0x80d
push 0x401db43
push 1
call fcn.0040e6dd
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.0040e6d7
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x4b60ce
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.00408bd5
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.0040e6d1
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x402615
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0
cmp eax, ecx
jl 0x4025fd
push 0x847
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x402615
mov eax, 1
jmp 0x40261a
mov eax, 0
test eax, eax
je 0x4051ba
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x402652
push 0x872
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40266f
push 0x872
push 0x401db43
push 1
call fcn.0040e6dd
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 0x40269a
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4026ad
push ebx
call fcn.0040e6d1
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 0x4026f9
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x40272d
and eax, 0xff
jmp 0x402782
cmp ecx, 0x80000201
jne 0x402738
cwde
jmp 0x402782
cmp ecx, 0x80000301
je 0x402782
cmp ecx, 0x80000401
je 0x402782
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402772
cmp ecx, 0x80000601
je 0x402777
push 0x8fa
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40277d
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x5177cc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x4027be
mov ebx, dword [0x5177cc]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x4027be
mov eax, 1
jmp 0x4027c3
mov eax, 0
test eax, eax
je 0x402f04
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 9
cmp eax, ecx
jl 0x4027f3
push 0xd18
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x402844
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xa
cmp eax, ecx
jl 0x40282c
push 0xd41
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x402844
mov eax, 1
jmp 0x402849
mov eax, 0
test eax, eax
je 0x402eff
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xb
cmp eax, ecx
jl 0x402879
push 0xd8d
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x402a07
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 0x4028be
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x4028f2
and eax, 0xff
jmp 0x402947
cmp ecx, 0x80000201
jne 0x4028fd
cwde
jmp 0x402947
cmp ecx, 0x80000301
je 0x402947
cmp ecx, 0x80000401
je 0x402947
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402937
cmp ecx, 0x80000601
je 0x40293c
push 0xdd9
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x402942
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x402993
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4029ef
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xb
cmp eax, ecx
jl 0x402a2f
push 0xe49
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x402afb
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x402a87
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x402ae3
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xb
cmp eax, ecx
jl 0x402b23
push 0xebe
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x402eff
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00401959
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 0x402b7b
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x402bbb
and eax, 0xff
jmp 0x402c10
cmp ecx, 0x80000201
jne 0x402bc6
cwde
jmp 0x402c10
cmp ecx, 0x80000301
je 0x402c10
cmp ecx, 0x80000401
je 0x402c10
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402c00
cmp ecx, 0x80000601
je 0x402c05
push 0xf57
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x402c0b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
push eax
push dword [ebp - 0x38]
call fcn.00401959
mov dword [ebp - 0x38], eax
push 8
call fcn.0040e6d7
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x4b60ce
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.00408bd5
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0
cmp eax, ecx
jl 0x402c82
push 0xffa
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x402e10
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 0x402cc7
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x402cfb
and eax, 0xff
jmp 0x402d50
cmp ecx, 0x80000201
jne 0x402d06
cwde
jmp 0x402d50
cmp ecx, 0x80000301
je 0x402d50
cmp ecx, 0x80000401
je 0x402d50
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x402d40
cmp ecx, 0x80000601
je 0x402d45
push 0x1046
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x402d4b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x402d9c
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x402df8
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0
cmp eax, ecx
jl 0x402e38
push 0x10b6
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x402eff
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x402e90
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x402eec
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
jmp 0x4051ba
mov ebx, dword [0x5177cc]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x4049d9
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.00401004
mov eax, 5
cmp eax, ecx
jl 0x402f56
push 0x11fa
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x402fe0
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 6
cmp eax, ecx
jl 0x402f8f
push 0x1223
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x402fe0
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 8
cmp eax, ecx
jl 0x402fc8
push 0x124c
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x402fe0
mov eax, 1
jmp 0x402fe5
mov eax, 0
test eax, eax
je 0x403292
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xc
cmp eax, ecx
jl 0x403015
push 0x139e
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4031a3
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 0x40305a
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x40308e
and eax, 0xff
jmp 0x4030e3
cmp ecx, 0x80000201
jne 0x403099
cwde
jmp 0x4030e3
cmp ecx, 0x80000301
je 0x4030e3
cmp ecx, 0x80000401
je 0x4030e3
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4030d3
cmp ecx, 0x80000601
je 0x4030d8
push 0x13ea
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4030de
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x40312f
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x40318b
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xc
cmp eax, ecx
jl 0x4031cb
push 0x145a
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x403292
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x403223
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x40327f
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 5
cmp eax, ecx
jl 0x4032ba
push 0x151b
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x403344
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 7
cmp eax, ecx
jl 0x4032f3
push 0x1544
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x403344
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xb
cmp eax, ecx
jl 0x40332c
push 0x156d
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x403344
mov eax, 1
jmp 0x403349
mov eax, 0
test eax, eax
je 0x4037f6
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x12
cmp eax, ecx
jl 0x403379
push 0x19a0
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4033c7
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x4033b2
push 0x19c9
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4033c7
xor eax, eax
jmp 0x4033cc
mov eax, 1
test eax, eax
je 0x40348f
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x40341b
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x403477
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x12
cmp eax, ecx
jl 0x4034b7
push 0x1a3b
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403645
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 0x4034fc
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x403530
and eax, 0xff
jmp 0x403585
cmp ecx, 0x80000201
jne 0x40353b
cwde
jmp 0x403585
cmp ecx, 0x80000301
je 0x403585
cmp ecx, 0x80000401
je 0x403585
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403575
cmp ecx, 0x80000601
je 0x40357a
push 0x1a87
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403580
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x4035d1
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x40362d
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x40366d
push 0x1af7
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4037f6
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 0x4036b2
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x4036e6
and eax, 0xff
jmp 0x40373b
cmp ecx, 0x80000201
jne 0x4036f1
cwde
jmp 0x40373b
cmp ecx, 0x80000301
je 0x40373b
cmp ecx, 0x80000401
je 0x40373b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40372b
cmp ecx, 0x80000601
je 0x403730
push 0x1b43
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403736
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x403787
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4037e3
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 5
cmp eax, ecx
jl 0x40381e
push 0x1c14
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x4038a8
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 9
cmp eax, ecx
jl 0x403857
push 0x1c3d
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x4038a8
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xb
cmp eax, ecx
jl 0x403890
push 0x1c66
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4038a8
mov eax, 1
jmp 0x4038ad
mov eax, 0
test eax, eax
je 0x403d5a
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x12
cmp eax, ecx
jl 0x4038dd
push 0x209f
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40392b
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x403916
push 0x20c8
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40392b
xor eax, eax
jmp 0x403930
mov eax, 1
test eax, eax
je 0x4039f3
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x40397f
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4039db
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x12
cmp eax, ecx
jl 0x403a1b
push 0x213a
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403ba9
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 0x403a60
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x403a94
and eax, 0xff
jmp 0x403ae9
cmp ecx, 0x80000201
jne 0x403a9f
cwde
jmp 0x403ae9
cmp ecx, 0x80000301
je 0x403ae9
cmp ecx, 0x80000401
je 0x403ae9
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403ad9
cmp ecx, 0x80000601
je 0x403ade
push 0x2186
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403ae4
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x403b35
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x403b91
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x403bd1
push 0x21f6
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x403d5a
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 0x403c16
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x403c4a
and eax, 0xff
jmp 0x403c9f
cmp ecx, 0x80000201
jne 0x403c55
cwde
jmp 0x403c9f
cmp ecx, 0x80000301
je 0x403c9f
cmp ecx, 0x80000401
je 0x403c9f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403c8f
cmp ecx, 0x80000601
je 0x403c94
push 0x2242
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403c9a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x403ceb
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x403d47
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 5
cmp eax, ecx
jl 0x403d82
push 0x2324
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x403e0c
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xa
cmp eax, ecx
jl 0x403dbb
push 0x234d
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x403e0c
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xe
cmp eax, ecx
jl 0x403df4
push 0x2376
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x403e0c
mov eax, 1
jmp 0x403e11
mov eax, 0
test eax, eax
je 0x404397
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 0x403e4d
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x403e81
and eax, 0xff
jmp 0x403ed6
cmp ecx, 0x80000201
jne 0x403e8c
cwde
jmp 0x403ed6
cmp ecx, 0x80000301
je 0x403ed6
cmp ecx, 0x80000401
je 0x403ed6
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x403ec6
cmp ecx, 0x80000601
je 0x403ecb
push 0x2806
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x403ed1
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x403f03
push 0x2858
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x403f51
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x18
cmp eax, ecx
jl 0x403f3c
push 0x2881
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x403f51
xor eax, eax
jmp 0x403f56
mov eax, 1
test eax, eax
je 0x404019
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x403fa5
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x404001
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x404041
push 0x28f3
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4041cf
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 0x404086
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x4040ba
and eax, 0xff
jmp 0x40410f
cmp ecx, 0x80000201
jne 0x4040c5
cwde
jmp 0x40410f
cmp ecx, 0x80000301
je 0x40410f
cmp ecx, 0x80000401
je 0x40410f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4040ff
cmp ecx, 0x80000601
je 0x404104
push 0x293f
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40410a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x40415b
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4041b7
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x18
cmp eax, ecx
jl 0x4041f7
push 0x29af
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404385
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 0x40423c
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x404270
and eax, 0xff
jmp 0x4042c5
cmp ecx, 0x80000201
jne 0x40427b
cwde
jmp 0x4042c5
cmp ecx, 0x80000301
je 0x4042c5
cmp ecx, 0x80000401
je 0x4042c5
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4042b5
cmp ecx, 0x80000601
je 0x4042ba
push 0x29fb
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4042c0
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x404311
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x40436d
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
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.00401004
mov eax, 5
cmp eax, ecx
jl 0x4043bf
push 0x2aec
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x404449
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 9
cmp eax, ecx
jl 0x4043f8
push 0x2b15
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x404449
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xe
cmp eax, ecx
jl 0x404431
push 0x2b3e
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x404449
mov eax, 1
jmp 0x40444e
mov eax, 0
test eax, eax
je 0x4049d4
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 0x40448a
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x4044be
and eax, 0xff
jmp 0x404513
cmp ecx, 0x80000201
jne 0x4044c9
cwde
jmp 0x404513
cmp ecx, 0x80000301
je 0x404513
cmp ecx, 0x80000401
je 0x404513
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404503
cmp ecx, 0x80000601
je 0x404508
push 0x2fc5
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40450e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x404540
push 0x3017
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40458e
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x18
cmp eax, ecx
jl 0x404579
push 0x3040
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40458e
xor eax, eax
jmp 0x404593
mov eax, 1
test eax, eax
je 0x404656
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x4045e2
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x40463e
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x15
cmp eax, ecx
jl 0x40467e
push 0x30b2
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40480c
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 0x4046c3
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x4046f7
and eax, 0xff
jmp 0x40474c
cmp ecx, 0x80000201
jne 0x404702
cwde
jmp 0x40474c
cmp ecx, 0x80000301
je 0x40474c
cmp ecx, 0x80000401
je 0x40474c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40473c
cmp ecx, 0x80000601
je 0x404741
push 0x30fe
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404747
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x404798
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4047f4
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0x18
cmp eax, ecx
jl 0x404834
push 0x316e
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4049c2
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 0x404879
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x4048ad
and eax, 0xff
jmp 0x404902
cmp ecx, 0x80000201
jne 0x4048b8
cwde
jmp 0x404902
cmp ecx, 0x80000301
je 0x404902
cmp ecx, 0x80000401
je 0x404902
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4048f2
cmp ecx, 0x80000601
je 0x4048f7
push 0x31ba
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4048fd
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x40494e
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4049aa
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 5
cmp eax, ecx
jl 0x404a01
push 0x329d
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x404e0c
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 0x404a3d
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x404a71
and eax, 0xff
jmp 0x404ac6
cmp ecx, 0x80000201
jne 0x404a7c
cwde
jmp 0x404ac6
cmp ecx, 0x80000301
je 0x404ac6
cmp ecx, 0x80000401
je 0x404ac6
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x404ab6
cmp ecx, 0x80000601
je 0x404abb
push 0x36fe
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x404ac1
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.00401692
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x404ae4
cmp dword [ebp - 0x38], 0xa
jge 0x404ae4
mov eax, 1
jmp 0x404ae9
mov eax, 0
test eax, eax
je 0x404e07
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00401959
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.00401004
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x404b34
push 0x3805
push 0x401db43
push 4
call fcn.0040e6dd
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x404b51
push 0x3805
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x404e07
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xa
cmp eax, ecx
jl 0x404b8a
push 0x3851
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x404d18
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 0x404bcf
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x404c03
and eax, 0xff
jmp 0x404c58
cmp ecx, 0x80000201
jne 0x404c0e
cwde
jmp 0x404c58
cmp ecx, 0x80000301
je 0x404c58
cmp ecx, 0x80000401
je 0x404c58
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404c48
cmp ecx, 0x80000601
je 0x404c4d
push 0x389d
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x404c53
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x404ca4
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x404d00
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xa
cmp eax, ecx
jl 0x404d40
push 0x390d
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x404e07
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x404d98
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x404df4
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
jmp 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 5
cmp eax, ecx
jl 0x404e34
push 0x39fb
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x404e85
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xa
cmp eax, ecx
jl 0x404e6d
push 0x3a24
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x404e85
mov eax, 1
jmp 0x404e8a
mov eax, 0
test eax, eax
je 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xb
cmp eax, ecx
jl 0x404eba
push 0x3e20
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x404f08
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xb
cmp eax, ecx
jl 0x404ef3
push 0x3e49
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x404f08
xor eax, eax
jmp 0x404f0d
mov eax, 1
test eax, eax
je 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xc
cmp eax, ecx
jl 0x404f3d
push 0x3e95
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4050cb
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 0x404f82
mov eax, 0x4b60ce
push eax
push 3
mov ebx, 0x40fab0
call fcn.0040e6ef
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 0x404fb6
and eax, 0xff
jmp 0x40500b
cmp ecx, 0x80000201
jne 0x404fc1
cwde
jmp 0x40500b
cmp ecx, 0x80000301
je 0x40500b
cmp ecx, 0x80000401
je 0x40500b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x404ffb
cmp ecx, 0x80000601
je 0x405000
push 0x3ee1
push 0x401db43
push 2
call fcn.0040e6dd
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x405006
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.00401692
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x405057
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4050b3
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
mov ebx, dword [ebp - 0x34]
call fcn.00401004
mov eax, 0xc
cmp eax, ecx
jl 0x4050f3
push 0x3f51
push 0x401db43
push 1
call fcn.0040e6dd
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4051ba
push 0x5177e8
push 4
mov eax, 2
call fcn.0040e6cb
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x5177e8]
mov dword [ebp - 0x40], ebx
call fcn.00401004
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 0x40514b
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.0040e6e9
add esp, 8
mov dword [0x5177e8], 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.0040e6d7
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 0x4051a7
push eax
mov ebx, eax
call fcn.00401d39
inc eax
push eax
call fcn.0040e6d7
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 0x4051ba
pop eax
pop ebx
pop ecx
jmp 0x4023e5
add esp, 0xc
push dword [ebp - 0x24]
push 0xffffffff
call fcn.00408ccf
pop ebx
pop ecx
jmp 0x401f06
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4051ec
push ebx
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x405203
push ebx
call fcn.0040e6d1
add esp, 4
pop ebx
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40521c
push ebx
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40522c
push ebx
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0040e6d1
add esp, 4
pop ebx
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405266
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405262
imul eax, dword [ebx]
jmp 0x405257
mov ecx, eax
test ecx, ecx
je 0x40528e
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0040e6d1
add esp, 4
pop ebx
call fcn.0040e6d1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40526c
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4052b4
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4052b0
imul eax, dword [ebx]
jmp 0x4052a5
mov ecx, eax
test ecx, ecx
je 0x40530b
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4052d2
push ebx
call fcn.0040e6d1
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4052e6
push ebx
call fcn.0040e6d1
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4052fa
push ebx
call fcn.0040e6d1
add esp, 4
pop ebx
call fcn.0040e6d1
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4052ba
call fcn.0040e6d1
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x405323
push ebx
call fcn.0040e6d1
add esp, 4
mov esp, ebp
pop ebp
ret