Function at 0x40c194
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.004b22b4
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.004b22b4
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.004b22b4
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x60bab9
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.004b22b4
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x60ba6b
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.004b22b4
add esp, 4
mov dword [ebp - 0x30], eax
mov edi, eax
mov esi, 0x60ba6b
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 [0x8fd42c]
call fcn.004027ae
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x40f24c
xor ecx, ecx
lea eax, [ebp - 4]
mov ebx, eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
cmp ecx, 3
jg 0x40f249
cmp dword [ebp - 4], 1
jne 0x40c2d1
mov eax, 0x60b9f0
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40c2c8
push ebx
call fcn.004b22ae
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40c328
cmp dword [ebp - 4], 2
jne 0x40c2fa
mov eax, 0x60baa4
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40c2f1
push ebx
call fcn.004b22ae
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40c328
cmp dword [ebp - 4], 3
jne 0x40c323
mov eax, 0x60baaf
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40c31a
push ebx
call fcn.004b22ae
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x40c328
jmp 0x40f24c
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.0040f397
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.004105f2
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40c376
push ebx
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40c386
push ebx
call fcn.004b22ae
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40c39a
push ebx
call fcn.004b22ae
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
call fcn.004107e3
mov dword [ebp - 0x3c], eax
push dword [ebp - 8]
push 0x60ba69
push dword [ebp - 0x3c]
mov ecx, 3
call fcn.00401c0c
add esp, 0xc
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40c3d1
push ebx
call fcn.004b22ae
add esp, 4
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x14]
push dword [ebp - 0x40]
mov eax, 0x32
call fcn.004b22c6
cmp dword [ebp - 0x44], esp
je 0x40c3fb
push 6
call fcn.004b22c0
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40c40b
push ebx
call fcn.004b22ae
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40c41e
mov eax, 0x60b9ef
push eax
push 1
mov ebx, 0x4b5560
call fcn.004b22ba
add esp, 0x10
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40c448
push ebx
call fcn.004b22ae
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0041088a
mov dword [ebp - 0x1c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40c46b
mov eax, 0x60b9ef
push eax
push 1
mov ebx, 0x4b5520
call fcn.004b22ba
add esp, 0x10
push 1
push 0
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
call fcn.004108ae
test eax, eax
je 0x40c4b4
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp word [ebx], 0x10b
jne 0x40c4b4
mov eax, 1
jmp 0x40c4b9
mov eax, 0
test eax, eax
je 0x40f242
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.00410c45
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, 0x33
call fcn.004b22c6
cmp dword [ebp - 0x54], esp
je 0x40c549
push 6
call fcn.004b22c0
add esp, 4
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.00410c68
push 8
call fcn.004b22b4
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x60ba6b
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.00410ddf
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.004b22ae
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 0x40c6da
mov ebx, dword [ebp - 0x28]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40c5e4
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40c5f7
push 1
call fcn.004b22c0
add esp, 4
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.0040be1d
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x28]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40c63d
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40c650
push 1
call fcn.004b22c0
add esp, 4
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.0040be1d
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x28]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40c696
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40c6a9
push 1
call fcn.004b22c0
add esp, 4
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.00410c68
pop eax
pop ebx
pop ecx
jmp 0x40c5b9
add esp, 0xc
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.0041136a
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40c708
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40c704
imul eax, dword [ebx]
jmp 0x40c6f9
mov ecx, eax
test ecx, ecx
je 0x40c730
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b22ae
add esp, 4
pop ebx
call fcn.004b22ae
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40c70e
call fcn.004b22ae
add esp, 4
mov eax, 0x60ba6b
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x24]
call fcn.004121a5
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 0x40f226
cmp dword [ebp - 4], 1
jne 0x40c87f
mov ebx, dword [ebp - 0x30]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40c78a
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40c79d
push 1
call fcn.004b22c0
add esp, 4
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 0x40c7cb
mov eax, 0x60b9ef
push eax
push 2
mov ebx, 0x4b2cf0
call fcn.004b22ba
add esp, 0x1c
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x5a
jne 0x40c86d
mov ebx, dword [ebp - 0x30]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40c808
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40c81b
push 1
call fcn.004b22c0
add esp, 4
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 0x40c849
mov eax, 0x60b9ef
push eax
push 2
mov ebx, 0x4b2cf0
call fcn.004b22ba
add esp, 0x1c
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x77
jne 0x40c86d
xor eax, eax
jmp 0x40c872
mov eax, 1
test eax, eax
je 0x40c87f
jmp 0x40f21e
mov ebx, dword [ebp - 0x30]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40c89c
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40c8af
push 1
call fcn.004b22c0
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x3c], ebx
push 8
call fcn.004b22b4
add esp, 4
mov dword [ebp - 0x40], eax
mov edi, eax
mov esi, 0x60ba6b
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.00412cb7
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
push ebx
call fcn.004b22ae
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x40c93f
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0
cmp eax, ecx
jl 0x40c927
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x48], ebx
mov ebx, dword [ebp - 0x48]
cmp byte [ebx], 0xb8
jne 0x40c93f
mov eax, 1
jmp 0x40c944
mov eax, 0
test eax, eax
je 0x40f21e
mov ebx, dword [ebp - 0xc]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x30]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x2c]
dec eax
jns 0x40c972
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40c985
push 1
call fcn.004b22c0
add esp, 4
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 0x40c9b0
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40c9c3
push ebx
call fcn.004b22ae
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 0x40ca0f
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40ca43
and eax, 0xff
jmp 0x40ca8e
cmp ecx, 0x80000201
jne 0x40ca4e
cwde
jmp 0x40ca8e
cmp ecx, 0x80000301
je 0x40ca8e
cmp ecx, 0x80000401
je 0x40ca8e
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40ca7e
cmp ecx, 0x80000601
je 0x40ca83
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40ca89
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [0x8fd430]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 5
jne 0x40caca
mov ebx, dword [0x8fd430]
add ebx, 8
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp dword [ebx], 0
jne 0x40caca
mov eax, 1
jmp 0x40cacf
mov eax, 0
test eax, eax
je 0x40d1ac
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 9
cmp eax, ecx
jl 0x40caf5
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xcd
jne 0x40cb3c
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xa
cmp eax, ecx
jl 0x40cb24
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x2e
jne 0x40cb3c
mov eax, 1
jmp 0x40cb41
mov eax, 0
test eax, eax
je 0x40d1a7
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xb
cmp eax, ecx
jl 0x40cb67
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40cceb
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 0x40cbac
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40cbe0
and eax, 0xff
jmp 0x40cc2b
cmp ecx, 0x80000201
jne 0x40cbeb
cwde
jmp 0x40cc2b
cmp ecx, 0x80000301
je 0x40cc2b
cmp ecx, 0x80000401
je 0x40cc2b
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40cc1b
cmp ecx, 0x80000601
je 0x40cc20
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40cc26
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40cc77
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40ccd3
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xb
cmp eax, ecx
jl 0x40cd09
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40cdd5
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40cd61
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40cdbd
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xb
cmp eax, ecx
jl 0x40cdf3
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe9
jne 0x40d1a7
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0x10
push dword [ebp - 0x38]
call fcn.0040be1d
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 0x40ce4b
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40ce8b
and eax, 0xff
jmp 0x40ced6
cmp ecx, 0x80000201
jne 0x40ce96
cwde
jmp 0x40ced6
cmp ecx, 0x80000301
je 0x40ced6
cmp ecx, 0x80000401
je 0x40ced6
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40cec6
cmp ecx, 0x80000601
je 0x40cecb
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40ced1
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
push eax
push dword [ebp - 0x38]
call fcn.0040be1d
mov dword [ebp - 0x38], eax
push 8
call fcn.004b22b4
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x60ba6b
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.00412cb7
mov ebx, dword [ebp - 0x3c]
push ebx
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0
cmp eax, ecx
jl 0x40cf3e
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40d0c2
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 0x40cf83
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40cfb7
and eax, 0xff
jmp 0x40d002
cmp ecx, 0x80000201
jne 0x40cfc2
cwde
jmp 0x40d002
cmp ecx, 0x80000301
je 0x40d002
cmp ecx, 0x80000401
je 0x40d002
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40cff2
cmp ecx, 0x80000601
je 0x40cff7
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40cffd
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40d04e
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40d0aa
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0
cmp eax, ecx
jl 0x40d0e0
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40d1a7
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40d138
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40d194
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
jmp 0x40f21e
mov ebx, dword [0x8fd430]
add ebx, 0x1c
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp dword [ebx], 0
je 0x40eac9
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.004010d2
mov eax, 5
cmp eax, ecx
jl 0x40d1f4
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x64
jne 0x40d26a
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 6
cmp eax, ecx
jl 0x40d223
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x40d26a
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 8
cmp eax, ecx
jl 0x40d252
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0xc0
jne 0x40d26a
mov eax, 1
jmp 0x40d26f
mov eax, 0
test eax, eax
je 0x40d4fe
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xc
cmp eax, ecx
jl 0x40d295
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40d419
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 0x40d2da
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40d30e
and eax, 0xff
jmp 0x40d359
cmp ecx, 0x80000201
jne 0x40d319
cwde
jmp 0x40d359
cmp ecx, 0x80000301
je 0x40d359
cmp ecx, 0x80000401
je 0x40d359
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40d349
cmp ecx, 0x80000601
je 0x40d34e
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40d354
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40d3a5
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40d401
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xc
cmp eax, ecx
jl 0x40d437
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40d4fe
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40d48f
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40d4eb
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 5
cmp eax, ecx
jl 0x40d51c
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x33
jne 0x40d592
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 7
cmp eax, ecx
jl 0x40d54b
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x40d592
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xb
cmp eax, ecx
jl 0x40d57a
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40d592
mov eax, 1
jmp 0x40d597
mov eax, 0
test eax, eax
je 0x40da08
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x12
cmp eax, ecx
jl 0x40d5bd
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40d601
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40d5ec
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40d601
xor eax, eax
jmp 0x40d606
mov eax, 1
test eax, eax
je 0x40d6c9
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40d655
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40d6b1
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x12
cmp eax, ecx
jl 0x40d6e7
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40d86b
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 0x40d72c
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40d760
and eax, 0xff
jmp 0x40d7ab
cmp ecx, 0x80000201
jne 0x40d76b
cwde
jmp 0x40d7ab
cmp ecx, 0x80000301
je 0x40d7ab
cmp ecx, 0x80000401
je 0x40d7ab
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40d79b
cmp ecx, 0x80000601
je 0x40d7a0
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40d7a6
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40d7f7
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40d853
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40d889
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40da08
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 0x40d8ce
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40d902
and eax, 0xff
jmp 0x40d94d
cmp ecx, 0x80000201
jne 0x40d90d
cwde
jmp 0x40d94d
cmp ecx, 0x80000301
je 0x40d94d
cmp ecx, 0x80000401
je 0x40d94d
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40d93d
cmp ecx, 0x80000601
je 0x40d942
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40d948
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40d999
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40d9f5
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 5
cmp eax, ecx
jl 0x40da26
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x40da9c
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 9
cmp eax, ecx
jl 0x40da55
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x33
jne 0x40da9c
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xb
cmp eax, ecx
jl 0x40da84
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40da9c
mov eax, 1
jmp 0x40daa1
mov eax, 0
test eax, eax
je 0x40df12
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x12
cmp eax, ecx
jl 0x40dac7
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40db0b
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40daf6
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40db0b
xor eax, eax
jmp 0x40db10
mov eax, 1
test eax, eax
je 0x40dbd3
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40db5f
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40dbbb
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x12
cmp eax, ecx
jl 0x40dbf1
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40dd75
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 0x40dc36
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40dc6a
and eax, 0xff
jmp 0x40dcb5
cmp ecx, 0x80000201
jne 0x40dc75
cwde
jmp 0x40dcb5
cmp ecx, 0x80000301
je 0x40dcb5
cmp ecx, 0x80000401
je 0x40dcb5
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40dca5
cmp ecx, 0x80000601
je 0x40dcaa
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40dcb0
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40dd01
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40dd5d
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40dd93
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40df12
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 0x40ddd8
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40de0c
and eax, 0xff
jmp 0x40de57
cmp ecx, 0x80000201
jne 0x40de17
cwde
jmp 0x40de57
cmp ecx, 0x80000301
je 0x40de57
cmp ecx, 0x80000401
je 0x40de57
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40de47
cmp ecx, 0x80000601
je 0x40de4c
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40de52
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40dea3
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40deff
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 5
cmp eax, ecx
jl 0x40df30
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xb9
jne 0x40dfa6
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xa
cmp eax, ecx
jl 0x40df5f
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0x8d
jne 0x40dfa6
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xe
cmp eax, ecx
jl 0x40df8e
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40dfa6
mov eax, 1
jmp 0x40dfab
mov eax, 0
test eax, eax
je 0x40e4eb
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 0x40dfe7
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40e01b
and eax, 0xff
jmp 0x40e066
cmp ecx, 0x80000201
jne 0x40e026
cwde
jmp 0x40e066
cmp ecx, 0x80000301
je 0x40e066
cmp ecx, 0x80000401
je 0x40e066
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40e056
cmp ecx, 0x80000601
je 0x40e05b
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40e061
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40e089
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40e0cd
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x18
cmp eax, ecx
jl 0x40e0b8
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40e0cd
xor eax, eax
jmp 0x40e0d2
mov eax, 1
test eax, eax
je 0x40e195
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40e121
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40e17d
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40e1b3
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40e337
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 0x40e1f8
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40e22c
and eax, 0xff
jmp 0x40e277
cmp ecx, 0x80000201
jne 0x40e237
cwde
jmp 0x40e277
cmp ecx, 0x80000301
je 0x40e277
cmp ecx, 0x80000401
je 0x40e277
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40e267
cmp ecx, 0x80000601
je 0x40e26c
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40e272
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40e2c3
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40e31f
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x18
cmp eax, ecx
jl 0x40e355
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40e4d9
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 0x40e39a
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40e3ce
and eax, 0xff
jmp 0x40e419
cmp ecx, 0x80000201
jne 0x40e3d9
cwde
jmp 0x40e419
cmp ecx, 0x80000301
je 0x40e419
cmp ecx, 0x80000401
je 0x40e419
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40e409
cmp ecx, 0x80000601
je 0x40e40e
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40e414
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40e465
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40e4c1
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
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.004010d2
mov eax, 5
cmp eax, ecx
jl 0x40e509
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x8d
jne 0x40e57f
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 9
cmp eax, ecx
jl 0x40e538
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xb9
jne 0x40e57f
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xe
cmp eax, ecx
jl 0x40e567
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x4c], ebx
mov ebx, dword [ebp - 0x4c]
cmp byte [ebx], 0x64
jne 0x40e57f
mov eax, 1
jmp 0x40e584
mov eax, 0
test eax, eax
je 0x40eac4
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 0x40e5c0
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40e5f4
and eax, 0xff
jmp 0x40e63f
cmp ecx, 0x80000201
jne 0x40e5ff
cwde
jmp 0x40e63f
cmp ecx, 0x80000301
je 0x40e63f
cmp ecx, 0x80000401
je 0x40e63f
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40e62f
cmp ecx, 0x80000601
je 0x40e634
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40e63a
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40e662
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
je 0x40e6a6
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x18
cmp eax, ecx
jl 0x40e691
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xc3
je 0x40e6a6
xor eax, eax
jmp 0x40e6ab
mov eax, 1
test eax, eax
je 0x40e76e
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40e6fa
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40e756
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x15
cmp eax, ecx
jl 0x40e78c
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40e910
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 0x40e7d1
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40e805
and eax, 0xff
jmp 0x40e850
cmp ecx, 0x80000201
jne 0x40e810
cwde
jmp 0x40e850
cmp ecx, 0x80000301
je 0x40e850
cmp ecx, 0x80000401
je 0x40e850
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40e840
cmp ecx, 0x80000601
je 0x40e845
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40e84b
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40e89c
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40e8f8
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0x18
cmp eax, ecx
jl 0x40e92e
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40eab2
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 0x40e973
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40e9a7
and eax, 0xff
jmp 0x40e9f2
cmp ecx, 0x80000201
jne 0x40e9b2
cwde
jmp 0x40e9f2
cmp ecx, 0x80000301
je 0x40e9f2
cmp ecx, 0x80000401
je 0x40e9f2
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40e9e2
cmp ecx, 0x80000601
je 0x40e9e7
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40e9ed
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40ea3e
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40ea9a
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0xc]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 0
jmp 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 5
cmp eax, ecx
jl 0x40eae7
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xe8
jne 0x40eeb6
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 0x40eb23
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40eb57
and eax, 0xff
jmp 0x40eba2
cmp ecx, 0x80000201
jne 0x40eb62
cwde
jmp 0x40eba2
cmp ecx, 0x80000301
je 0x40eba2
cmp ecx, 0x80000401
je 0x40eba2
mov dword [ebp - 0x4c], eax
cmp ecx, 0x80000501
je 0x40eb92
cmp ecx, 0x80000601
je 0x40eb97
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x4c]
jmp 0x40eb9d
mov dword [ebp - 0x48], edx
fld qword [ebp - 0x4c]
call fcn.004024d2
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jle 0x40ebc0
cmp dword [ebp - 0x38], 0xa
jge 0x40ebc0
mov eax, 1
jmp 0x40ebc5
mov eax, 0
test eax, eax
je 0x40eeb1
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 0xd
push dword [ebp - 0x38]
call fcn.0040be1d
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
push ebx
push ecx
mov eax, dword [ebp - 0x38]
dec eax
jns 0x40ec06
push 4
call fcn.004b22c0
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ec19
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xf
jne 0x40eeb1
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xa
cmp eax, ecx
jl 0x40ec48
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40edcc
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 0x40ec8d
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40ecc1
and eax, 0xff
jmp 0x40ed0c
cmp ecx, 0x80000201
jne 0x40eccc
cwde
jmp 0x40ed0c
cmp ecx, 0x80000301
je 0x40ed0c
cmp ecx, 0x80000401
je 0x40ed0c
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40ecfc
cmp ecx, 0x80000601
je 0x40ed01
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40ed07
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40ed58
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40edb4
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xa
cmp eax, ecx
jl 0x40edea
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40eeb1
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40ee42
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40ee9e
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
jmp 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 5
cmp eax, ecx
jl 0x40eed4
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xba
jne 0x40ef1b
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xa
cmp eax, ecx
jl 0x40ef03
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xff
jne 0x40ef1b
mov eax, 1
jmp 0x40ef20
mov eax, 0
test eax, eax
je 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xb
cmp eax, ecx
jl 0x40ef46
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0x12
je 0x40ef8a
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xb
cmp eax, ecx
jl 0x40ef75
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x44], ebx
mov ebx, dword [ebp - 0x44]
cmp byte [ebx], 0xd2
je 0x40ef8a
xor eax, eax
jmp 0x40ef8f
mov eax, 1
test eax, eax
je 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xc
cmp eax, ecx
jl 0x40efb5
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc2
jne 0x40f139
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 0x40effa
mov eax, 0x60ba6b
push eax
push 3
mov ebx, 0x4b41a0
call fcn.004b22ba
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 0x40f02e
and eax, 0xff
jmp 0x40f079
cmp ecx, 0x80000201
jne 0x40f039
cwde
jmp 0x40f079
cmp ecx, 0x80000301
je 0x40f079
cmp ecx, 0x80000401
je 0x40f079
mov dword [ebp - 0x50], eax
cmp ecx, 0x80000501
je 0x40f069
cmp ecx, 0x80000601
je 0x40f06e
push 2
call fcn.004b22c0
add esp, 4
fld dword [ebp - 0x50]
jmp 0x40f074
mov dword [ebp - 0x4c], edx
fld qword [ebp - 0x50]
call fcn.004024d2
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40f0c5
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40f121
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
mov ebx, dword [ebp - 0x34]
call fcn.004010d2
mov eax, 0xc
cmp eax, ecx
jl 0x40f157
push 1
call fcn.004b22c0
add esp, 4
add ebx, eax
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx], 0xc3
jne 0x40f21e
push 0x8fd42c
push 4
mov eax, 2
call fcn.004b22a8
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x3c], eax
mov ebx, dword [0x8fd42c]
mov dword [ebp - 0x40], ebx
call fcn.004010d2
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 0x40f1af
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.004b22cc
add esp, 8
mov dword [0x8fd42c], 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.004b22b4
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 0x40f20b
push eax
mov ebx, eax
call fcn.00401ba1
inc eax
push eax
call fcn.004b22b4
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 0x40f21e
pop eax
pop ebx
pop ecx
jmp 0x40c755
add esp, 0xc
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push dword [ebp - 0x24]
push 0xffffffff
call fcn.00412db1
pop ebx
pop ecx
jmp 0x40c29a
add esp, 8
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40f25c
push ebx
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40f273
push ebx
call fcn.004b22ae
add esp, 4
pop ebx
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40f28c
push ebx
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40f29c
push ebx
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
add ebx, 0x68
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b22ae
add esp, 4
pop ebx
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40f2d6
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40f2d2
imul eax, dword [ebx]
jmp 0x40f2c7
mov ecx, eax
test ecx, ecx
je 0x40f2fe
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b22ae
add esp, 4
pop ebx
call fcn.004b22ae
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40f2dc
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x30]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40f324
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40f320
imul eax, dword [ebx]
jmp 0x40f315
mov ecx, eax
test ecx, ecx
je 0x40f37b
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40f342
push ebx
call fcn.004b22ae
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40f356
push ebx
call fcn.004b22ae
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40f36a
push ebx
call fcn.004b22ae
add esp, 4
pop ebx
call fcn.004b22ae
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40f32a
call fcn.004b22ae
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40f393
push ebx
call fcn.004b22ae
add esp, 4
mov esp, ebp
pop ebp
ret