Function at 0x4067cc
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.0051b2f1
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.0051b2f1
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.0051b2f1
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x631b9a
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.0051b2f1
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x631846
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.0051b2f1
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x631846
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 [0x12eece8]
call fcn.0040163b
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x40a07b
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x40a078
cmp dword [ebp - 4], 1
jne 0x406909
mov eax, 0x631bbd
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406900
push ebx
call fcn.0051b2eb
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x406960
cmp dword [ebp - 4], 2
jne 0x406932
mov eax, 0x631bc7
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406929
push ebx
call fcn.0051b2eb
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x406960
cmp dword [ebp - 4], 3
jne 0x40695b
mov eax, 0x631bd2
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406952
push ebx
call fcn.0051b2eb
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x406960
jmp 0x40a07b
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.0040a1c6
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.0040d467
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4069ae
push ebx
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x4069be
push ebx
call fcn.0051b2eb
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4069d2
push ebx
call fcn.0051b2eb
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.0040d586
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x631844
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x406a09
push ebx
call fcn.0051b2eb
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0x15
call fcn.0051b303
cmp dword [ebp - 0x44], esp
je 0x406a3d
push 0x267
push 0x40ab78f
push 6
call fcn.0051b2f7
add esp, 0xc
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x406a4d
push ebx
call fcn.0051b2eb
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x406a60
mov eax, 0x63184e
push eax
push 1
mov ebx, 0x51e6e0
call fcn.0051b2fd
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x406a8a
push ebx
call fcn.0051b2eb
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00406372
mov dword [ebp - 0x1c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x406aad
mov eax, 0x63184e
push eax
push 1
mov ebx, 0x51e630
call fcn.0051b2fd
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.0040d637
test eax, eax
je 0x406af6
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x406af6
mov eax, 1
jmp 0x406afb
mov eax, 0
test eax, eax
je 0x40a071
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.0040d976
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, 0x16
call fcn.0051b303
cmp dword [ebp - 0x54], esp
je 0x406b95
push 0x433
push 0x40ab78f
push 6
call fcn.0051b2f7
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.0040d999
push 8
call fcn.0051b2f1
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x631846
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.0040c188
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0051b2eb
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 0x406d62
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x406c3a
push 0x51a
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x406c57
push 0x51a
push 0x40ab78f
push 1
call fcn.0051b2f7
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.00401561
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x406ca7
push 0x54b
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x406cc4
push 0x54b
push 0x40ab78f
push 1
call fcn.0051b2f7
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.00401561
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x406d14
push 0x54b
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x406d31
push 0x54b
push 0x40ab78f
push 1
call fcn.0051b2f7
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.0040d999
pop eax
pop ebx
pop ecx
jmp 0x406c05
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.0040da43
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x406d90
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x406d8c
imul eax, dword [ebx]
jmp 0x406d81
mov ecx, eax
test ecx, ecx
je 0x406db8
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0051b2eb
add esp, 4
pop ebx
call fcn.0051b2eb
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x406d96
call fcn.0051b2eb
add esp, 4
mov eax, 0x631846
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.0040e433
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 0x40a033
cmp dword [ebp - 4], 1
jne 0x406f2f
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x406e1c
push 0x6bb
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x406e39
push 0x6bb
push 0x40ab78f
push 1
call fcn.0051b2f7
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 0x406e67
mov eax, 0x63184e
push eax
push 2
mov ebx, 0x51bf10
call fcn.0051b2fd
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x406f1d
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x406eae
push 0x70a
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x406ecb
push 0x70a
push 0x40ab78f
push 1
call fcn.0051b2f7
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 0x406ef9
mov eax, 0x63184e
push eax
push 2
mov ebx, 0x51bf10
call fcn.0051b2fd
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x406f1d
xor eax, eax
jmp 0x406f22
mov eax, 1
test eax, eax
je 0x406f2f
jmp 0x40a02b
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x406f56
push 0x7b6
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x406f73
push 0x7b6
push 0x40ab78f
push 1
call fcn.0051b2f7
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.0051b2f1
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x631846
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.0040eef8
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.0051b2eb
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x40700d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x406ff5
push 0x7f0
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x40700d
mov eax, 1
jmp 0x407012
mov eax, 0
test eax, eax
je 0x40a02b
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40704a
push 0x81b
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x407067
push 0x81b
push 0x40ab78f
push 1
call fcn.0051b2f7
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 0x407092
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x4070a5
push ebx
call fcn.0051b2eb
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 0x4070f1
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x407125
and eax, 0xff
jmp 0x40717a
cmp ecx, 0x80000201
jne 0x407130
cwde
jmp 0x40717a
cmp ecx, 0x80000301
je 0x40717a
cmp ecx, 0x80000401
je 0x40717a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40716a
cmp ecx, 0x80000601
je 0x40716f
push 0x8a3
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407175
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x12eece0]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x4071b6
mov ebx, dword [0x12eece0]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x4071b6
mov eax, 1
jmp 0x4071bb
mov eax, 0
test eax, eax
je 0x4078fc
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x4071eb
push 0xcc1
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x40723c
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x407224
push 0xcea
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x40723c
mov eax, 1
jmp 0x407241
mov eax, 0
test eax, eax
je 0x4078f7
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x407271
push 0xd36
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4073ff
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 0x4072b6
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x4072ea
and eax, 0xff
jmp 0x40733f
cmp ecx, 0x80000201
jne 0x4072f5
cwde
jmp 0x40733f
cmp ecx, 0x80000301
je 0x40733f
cmp ecx, 0x80000401
je 0x40733f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40732f
cmp ecx, 0x80000601
je 0x407334
push 0xd82
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40733a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x40738b
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4073e7
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x407427
push 0xdf2
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4074f3
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x40747f
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4074db
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x40751b
push 0xe67
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x4078f7
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.00401561
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 0x407573
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x4075b3
and eax, 0xff
jmp 0x407608
cmp ecx, 0x80000201
jne 0x4075be
cwde
jmp 0x407608
cmp ecx, 0x80000301
je 0x407608
cmp ecx, 0x80000401
je 0x407608
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4075f8
cmp ecx, 0x80000601
je 0x4075fd
push 0xf00
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407603
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
push eax
push dword [ebp - 0x38]
call fcn.00401561
mov dword [ebp - 0x38], eax
push 8
call fcn.0051b2f1
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x631846
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.0040eef8
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x40767a
push 0xfa3
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x407808
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 0x4076bf
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x4076f3
and eax, 0xff
jmp 0x407748
cmp ecx, 0x80000201
jne 0x4076fe
cwde
jmp 0x407748
cmp ecx, 0x80000301
je 0x407748
cmp ecx, 0x80000401
je 0x407748
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407738
cmp ecx, 0x80000601
je 0x40773d
push 0xfef
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407743
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x407794
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4077f0
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0
cmp eax, ecx
jl 0x407830
push 0x105f
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x4078f7
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x407888
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4078e4
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
jmp 0x40a02b
mov ebx, dword [0x12eece0]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x40984a
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 [0x12eece0]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0xa
jne 0x40795d
mov ebx, dword [0x12eece0]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x40795d
mov eax, 1
jmp 0x407962
mov eax, 0
test eax, eax
je 0x407d9f
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x407992
push 0x16b1
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x4079e3
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x1f
cmp eax, ecx
jl 0x4079cb
push 0x16da
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xba
jne 0x4079e3
mov eax, 1
jmp 0x4079e8
mov eax, 0
test eax, eax
je 0x407b68
mov ebx, dword [ebp - 0xc]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000301
push 0
push 0x27
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x407a24
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x407a58
and eax, 0xff
jmp 0x407aad
cmp ecx, 0x80000201
jne 0x407a63
cwde
jmp 0x407aad
cmp ecx, 0x80000301
je 0x407aad
cmp ecx, 0x80000401
je 0x407aad
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407a9d
cmp ecx, 0x80000601
je 0x407aa2
push 0x1727
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407aa8
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x407af9
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x407b55
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x407b90
push 0x17b4
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x407c1a
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x407bc9
push 0x17dd
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x407c1a
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x407c02
push 0x1806
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xd2
jne 0x407c1a
mov eax, 1
jmp 0x407c1f
mov eax, 0
test eax, eax
je 0x407d9f
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 0x407c5b
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x407c8f
and eax, 0xff
jmp 0x407ce4
cmp ecx, 0x80000201
jne 0x407c9a
cwde
jmp 0x407ce4
cmp ecx, 0x80000301
je 0x407ce4
cmp ecx, 0x80000401
je 0x407ce4
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407cd4
cmp ecx, 0x80000601
je 0x407cd9
push 0x199e
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407cdf
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x407d30
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x407d8c
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x407dc7
push 0x1a52
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x407e51
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 6
cmp eax, ecx
jl 0x407e00
push 0x1a7b
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x407e51
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 8
cmp eax, ecx
jl 0x407e39
push 0x1aa4
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x407e51
mov eax, 1
jmp 0x407e56
mov eax, 0
test eax, eax
je 0x408103
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x407e86
push 0x1bf6
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x408014
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 0x407ecb
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x407eff
and eax, 0xff
jmp 0x407f54
cmp ecx, 0x80000201
jne 0x407f0a
cwde
jmp 0x407f54
cmp ecx, 0x80000301
je 0x407f54
cmp ecx, 0x80000401
je 0x407f54
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x407f44
cmp ecx, 0x80000601
je 0x407f49
push 0x1c42
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x407f4f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x407fa0
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x407ffc
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x40803c
push 0x1cb2
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x408103
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x408094
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4080f0
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x40812b
push 0x1d73
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x4081b5
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 7
cmp eax, ecx
jl 0x408164
push 0x1d9c
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x4081b5
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x40819d
push 0x1dc5
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4081b5
mov eax, 1
jmp 0x4081ba
mov eax, 0
test eax, eax
je 0x408667
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x4081ea
push 0x21f8
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x408238
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x408223
push 0x2221
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x408238
xor eax, eax
jmp 0x40823d
mov eax, 1
test eax, eax
je 0x408300
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x40828c
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4082e8
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x408328
push 0x2293
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4084b6
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 0x40836d
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x4083a1
and eax, 0xff
jmp 0x4083f6
cmp ecx, 0x80000201
jne 0x4083ac
cwde
jmp 0x4083f6
cmp ecx, 0x80000301
je 0x4083f6
cmp ecx, 0x80000401
je 0x4083f6
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4083e6
cmp ecx, 0x80000601
je 0x4083eb
push 0x22df
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4083f1
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x408442
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x40849e
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x4084de
push 0x234f
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x408667
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 0x408523
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x408557
and eax, 0xff
jmp 0x4085ac
cmp ecx, 0x80000201
jne 0x408562
cwde
jmp 0x4085ac
cmp ecx, 0x80000301
je 0x4085ac
cmp ecx, 0x80000401
je 0x4085ac
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40859c
cmp ecx, 0x80000601
je 0x4085a1
push 0x239b
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4085a7
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x4085f8
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x408654
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x40868f
push 0x246c
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x408719
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x4086c8
push 0x2495
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x408719
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x408701
push 0x24be
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x408719
mov eax, 1
jmp 0x40871e
mov eax, 0
test eax, eax
je 0x408bcb
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x40874e
push 0x28f7
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40879c
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x408787
push 0x2920
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40879c
xor eax, eax
jmp 0x4087a1
mov eax, 1
test eax, eax
je 0x408864
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x4087f0
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x40884c
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x12
cmp eax, ecx
jl 0x40888c
push 0x2992
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x408a1a
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 0x4088d1
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x408905
and eax, 0xff
jmp 0x40895a
cmp ecx, 0x80000201
jne 0x408910
cwde
jmp 0x40895a
cmp ecx, 0x80000301
je 0x40895a
cmp ecx, 0x80000401
je 0x40895a
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40894a
cmp ecx, 0x80000601
je 0x40894f
push 0x29de
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408955
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x4089a6
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x408a02
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x408a42
push 0x2a4e
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x408bcb
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 0x408a87
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x408abb
and eax, 0xff
jmp 0x408b10
cmp ecx, 0x80000201
jne 0x408ac6
cwde
jmp 0x408b10
cmp ecx, 0x80000301
je 0x408b10
cmp ecx, 0x80000401
je 0x408b10
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x408b00
cmp ecx, 0x80000601
je 0x408b05
push 0x2a9a
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408b0b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x408b5c
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x408bb8
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x408bf3
push 0x2b7c
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x408c7d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x408c2c
push 0x2ba5
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x408c7d
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xe
cmp eax, ecx
jl 0x408c65
push 0x2bce
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x408c7d
mov eax, 1
jmp 0x408c82
mov eax, 0
test eax, eax
je 0x409208
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 0x408cbe
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x408cf2
and eax, 0xff
jmp 0x408d47
cmp ecx, 0x80000201
jne 0x408cfd
cwde
jmp 0x408d47
cmp ecx, 0x80000301
je 0x408d47
cmp ecx, 0x80000401
je 0x408d47
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x408d37
cmp ecx, 0x80000601
je 0x408d3c
push 0x305e
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408d42
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x408d74
push 0x30b0
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x408dc2
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x408dad
push 0x30d9
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x408dc2
xor eax, eax
jmp 0x408dc7
mov eax, 1
test eax, eax
je 0x408e8a
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x408e16
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x408e72
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x408eb2
push 0x314b
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x409040
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 0x408ef7
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x408f2b
and eax, 0xff
jmp 0x408f80
cmp ecx, 0x80000201
jne 0x408f36
cwde
jmp 0x408f80
cmp ecx, 0x80000301
je 0x408f80
cmp ecx, 0x80000401
je 0x408f80
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x408f70
cmp ecx, 0x80000601
je 0x408f75
push 0x3197
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x408f7b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x408fcc
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x409028
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x409068
push 0x3207
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x4091f6
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 0x4090ad
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x4090e1
and eax, 0xff
jmp 0x409136
cmp ecx, 0x80000201
jne 0x4090ec
cwde
jmp 0x409136
cmp ecx, 0x80000301
je 0x409136
cmp ecx, 0x80000401
je 0x409136
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x409126
cmp ecx, 0x80000601
je 0x40912b
push 0x3253
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x409131
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x409182
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4091de
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
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.004012a1
mov eax, 5
cmp eax, ecx
jl 0x409230
push 0x3344
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x4092ba
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 9
cmp eax, ecx
jl 0x409269
push 0x336d
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x4092ba
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xe
cmp eax, ecx
jl 0x4092a2
push 0x3396
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x4092ba
mov eax, 1
jmp 0x4092bf
mov eax, 0
test eax, eax
je 0x409845
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 0x4092fb
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x40932f
and eax, 0xff
jmp 0x409384
cmp ecx, 0x80000201
jne 0x40933a
cwde
jmp 0x409384
cmp ecx, 0x80000301
je 0x409384
cmp ecx, 0x80000401
je 0x409384
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x409374
cmp ecx, 0x80000601
je 0x409379
push 0x381d
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40937f
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x4093b1
push 0x386f
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x4093ff
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x4093ea
push 0x3898
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x4093ff
xor eax, eax
jmp 0x409404
mov eax, 1
test eax, eax
je 0x4094c7
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x409453
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x4094af
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x15
cmp eax, ecx
jl 0x4094ef
push 0x390a
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40967d
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 0x409534
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x409568
and eax, 0xff
jmp 0x4095bd
cmp ecx, 0x80000201
jne 0x409573
cwde
jmp 0x4095bd
cmp ecx, 0x80000301
je 0x4095bd
cmp ecx, 0x80000401
je 0x4095bd
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x4095ad
cmp ecx, 0x80000601
je 0x4095b2
push 0x3956
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x4095b8
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x409609
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x409665
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0x18
cmp eax, ecx
jl 0x4096a5
push 0x39c6
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x409833
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 0x4096ea
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x40971e
and eax, 0xff
jmp 0x409773
cmp ecx, 0x80000201
jne 0x409729
cwde
jmp 0x409773
cmp ecx, 0x80000301
je 0x409773
cmp ecx, 0x80000401
je 0x409773
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x409763
cmp ecx, 0x80000601
je 0x409768
push 0x3a12
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x40976e
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x4097bf
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x40981b
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x409872
push 0x3af5
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x409c7d
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 0x4098ae
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x4098e2
and eax, 0xff
jmp 0x409937
cmp ecx, 0x80000201
jne 0x4098ed
cwde
jmp 0x409937
cmp ecx, 0x80000301
je 0x409937
cmp ecx, 0x80000401
je 0x409937
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x409927
cmp ecx, 0x80000601
je 0x40992c
push 0x3f56
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x4c]
jmp 0x409932
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.0040127a
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x409955
cmp dword [ebp - 0x38], 0xa
jge 0x409955
mov eax, 1
jmp 0x40995a
mov eax, 0
test eax, eax
je 0x409c78
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.00401561
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x4099a5
push 0x405d
push 0x40ab78f
push 4
call fcn.0051b2f7
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4099c2
push 0x405d
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x409c78
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x4099fb
push 0x40a9
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x409b89
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 0x409a40
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x409a74
and eax, 0xff
jmp 0x409ac9
cmp ecx, 0x80000201
jne 0x409a7f
cwde
jmp 0x409ac9
cmp ecx, 0x80000301
je 0x409ac9
cmp ecx, 0x80000401
je 0x409ac9
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x409ab9
cmp ecx, 0x80000601
je 0x409abe
push 0x40f5
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x409ac4
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x409b15
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x409b71
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x409bb1
push 0x4165
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x409c78
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x409c09
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x409c65
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
jmp 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 5
cmp eax, ecx
jl 0x409ca5
push 0x4253
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x409cf6
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xa
cmp eax, ecx
jl 0x409cde
push 0x427c
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x409cf6
mov eax, 1
jmp 0x409cfb
mov eax, 0
test eax, eax
je 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x409d2b
push 0x4678
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x409d79
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xb
cmp eax, ecx
jl 0x409d64
push 0x46a1
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x409d79
xor eax, eax
jmp 0x409d7e
mov eax, 1
test eax, eax
je 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x409dae
push 0x46ed
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x409f3c
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 0x409df3
mov eax, 0x631846
push eax
push 3
mov ebx, 0x51d270
call fcn.0051b2fd
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 0x409e27
and eax, 0xff
jmp 0x409e7c
cmp ecx, 0x80000201
jne 0x409e32
cwde
jmp 0x409e7c
cmp ecx, 0x80000301
je 0x409e7c
cmp ecx, 0x80000401
je 0x409e7c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x409e6c
cmp ecx, 0x80000601
je 0x409e71
push 0x4739
push 0x40ab78f
push 2
call fcn.0051b2f7
add esp, 0xc
fld dword [ebp - 0x50]
jmp 0x409e77
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.0040127a
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x409ec8
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x409f24
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
mov ebx, dword [ebp - 0x34]
call fcn.004012a1
mov eax, 0xc
cmp eax, ecx
jl 0x409f64
push 0x47a9
push 0x40ab78f
push 1
call fcn.0051b2f7
add esp, 0xc
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40a02b
push 0x12eece8
push 4
mov eax, 2
call fcn.0051b2e5
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x12eece8]
mov dword [ebp - 0x40], ebx
call fcn.004012a1
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 0x409fbc
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.0051b309
add esp, 8
mov dword [0x12eece8], 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.0051b2f1
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 0x40a018
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0051b2f1
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 0x40a02b
pop eax
pop ebx
pop ecx
jmp 0x406ddd
add esp, 0xc
mov dword [ebp - 0x3c], esp
push 0x8000
push 0
push dword [ebp - 0x24]
push 0xffffffff
mov eax, 0x17
call fcn.0051b303
cmp dword [ebp - 0x3c], esp
je 0x40a071
push 0x48ac
push 0x40ab78f
push 6
call fcn.0051b2f7
add esp, 0xc
pop ebx
pop ecx
jmp 0x4068d2
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40a08b
push ebx
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a0a2
push ebx
call fcn.0051b2eb
add esp, 4
pop ebx
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40a0bb
push ebx
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40a0cb
push ebx
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0051b2eb
add esp, 4
pop ebx
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40a105
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40a101
imul eax, dword [ebx]
jmp 0x40a0f6
mov ecx, eax
test ecx, ecx
je 0x40a12d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0051b2eb
add esp, 4
pop ebx
call fcn.0051b2eb
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40a10b
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40a153
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40a14f
imul eax, dword [ebx]
jmp 0x40a144
mov ecx, eax
test ecx, ecx
je 0x40a1aa
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a171
push ebx
call fcn.0051b2eb
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a185
push ebx
call fcn.0051b2eb
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a199
push ebx
call fcn.0051b2eb
add esp, 4
pop ebx
call fcn.0051b2eb
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40a159
call fcn.0051b2eb
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40a1c2
push ebx
call fcn.0051b2eb
add esp, 4
mov esp, ebp
pop ebp
ret