Function at 0x40894c
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x164
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
push 0x20
call fcn.004a31d8
add esp, 4
mov dword [ebp - 0x24], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x7c], 0
push 8
call fcn.004a31d8
add esp, 4
mov dword [ebp - 0x80], eax
mov edi, eax
mov esi, 0x58176f
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc8], 0
push 8
call fcn.004a31d8
add esp, 4
mov dword [ebp - 0xcc], eax
mov edi, eax
mov esi, 0x58176f
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xe4], 0
jmp 0x408b7f
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
fninit
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 4], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 8], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0xc], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x10], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x14], eax
nop
nop
push ecx
push edx
rdtsc
mov ecx, 0x17
mul ecx
add eax, 7
mov ecx, 0x1000
sub ecx, 0x10
inc ecx
xor edx, edx
div ecx
add edx, 0x1000
mov eax, edx
pop edx
pop ecx
mov dword [ebp - 0x18], eax
push esi
nop
mov esi, 0x666888
mov esi, 0x889688
nop
pop esi
nop
mov dword [ebp - 0xe8], esp
push 0
mov eax, 0x21
call fcn.004a31e4
cmp dword [ebp - 0xe8], esp
je 0x408d23
push 0xca8
push 0x401e40f
push 6
call fcn.004a31de
add esp, 0xc
push 0x80000301
push 0
push dword [0x604694]
push 1
mov eax, 4
mov ebx, 0x50cdb0
call fcn.004a31fc
add esp, 0x10
mov dword [0x6046b4], 0
mov dword [0x6046b8], 0
mov dword [0x6046bc], 0
mov dword [0x6046c0], 0
mov byte [0x6046c4], 0
call fcn.0040d856
call fcn.0040f32f
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x18]
mov dword [0x6046c8], eax
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
je 0x408da9
push eax
mov ebx, eax
call fcn.0040101f
inc eax
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x408dba
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov ebx, dword [0x6046cc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x408ddf
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x408ddb
imul eax, dword [ebx]
jmp 0x408dd0
mov ecx, eax
test ecx, ecx
je 0x408e1f
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408dfa
push ebx
call fcn.004a31d2
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408e0e
push ebx
call fcn.004a31d2
add esp, 4
pop ebx
call fcn.004a31d2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x408de5
call fcn.004a31d2
add esp, 4
mov eax, 0x58176f
mov dword [0x6046cc], eax
mov dword [ebp - 0xe8], esp
mov eax, dword [ebp - 0x24]
push eax
push 0x10
call fcn.004a31d8
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0xf0], ebx
mov dword [ebp - 0xec], eax
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, 0x22
call fcn.004a31e4
cmp dword [ebp - 0xe8], esp
je 0x408ed9
push 0xe06
push 0x401e40f
push 6
call fcn.004a31de
add esp, 0xc
push eax
mov ebx, dword [ebp - 0xec]
push ebx
mov edi, dword [ebp - 0xf0]
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
call fcn.004a31d2
add esp, 4
pop eax
call fcn.0040f32f
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0xf0], ebx
mov ebx, dword [ebp - 0xf0]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fmul qword [0x581b39]
fstp qword [ebp - 0x100]
push 0x80000601
push dword [ebp - 0xfc]
push dword [ebp - 0x100]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0x24]
add ebx, 4
mov dword [ebp - 0x108], ebx
mov ebx, dword [ebp - 0x108]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x110], eax
fild dword [ebp - 0x110]
fstp qword [ebp - 0x110]
fld qword [ebp - 0x110]
fmul qword [0x581b39]
fstp qword [ebp - 0x118]
push 0x80000601
push dword [ebp - 0x114]
push dword [ebp - 0x118]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x11c], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0xc
mov dword [ebp - 0x120], ebx
mov ebx, dword [ebp - 0x120]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x128], eax
fild dword [ebp - 0x128]
fstp qword [ebp - 0x128]
fld qword [ebp - 0x128]
fmul qword [0x581b39]
fstp qword [ebp - 0x130]
push 0x80000601
push dword [ebp - 0x12c]
push dword [ebp - 0x130]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x134], eax
push dword [ebp - 0x134]
push dword [ebp - 0x11c]
push dword [ebp - 0x104]
push dword [ebp - 0xec]
mov ecx, 4
call fcn.0040108a
add esp, 0x10
mov dword [ebp - 0x138], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x4090d1
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x4090e4
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x4090f7
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x134]
test ebx, ebx
je 0x40910a
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0x138]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x409121
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x10
mov dword [ebp - 0xe8], ebx
mov ebx, dword [ebp - 0xe8]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fmul qword [0x581b39]
fstp qword [ebp - 0xf8]
push 0x80000601
push dword [ebp - 0xf4]
push dword [ebp - 0xf8]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x14
mov dword [ebp - 0x100], ebx
mov ebx, dword [ebp - 0x100]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x108], eax
fild dword [ebp - 0x108]
fstp qword [ebp - 0x108]
fld qword [ebp - 0x108]
fadd qword [0x581e4a]
fstp qword [ebp - 0x110]
push 0x80000601
push dword [ebp - 0x10c]
push dword [ebp - 0x110]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x114], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x18
mov dword [ebp - 0x118], ebx
mov ebx, dword [ebp - 0x118]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x120], eax
fild dword [ebp - 0x120]
fstp qword [ebp - 0x120]
fld qword [ebp - 0x120]
fmul qword [0x581b39]
fstp qword [ebp - 0x128]
push 0x80000601
push dword [ebp - 0x124]
push dword [ebp - 0x128]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x12c], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0x1c
mov dword [ebp - 0x130], ebx
mov ebx, dword [ebp - 0x130]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x138], eax
fild dword [ebp - 0x138]
fstp qword [ebp - 0x138]
fld qword [ebp - 0x138]
fmul qword [0x581e52]
fstp qword [ebp - 0x140]
push 0x80000601
push dword [ebp - 0x13c]
push dword [ebp - 0x140]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x144], eax
mov ebx, dword [ebp - 0x24]
add ebx, 8
mov dword [ebp - 0x148], ebx
mov ebx, dword [ebp - 0x148]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x150], eax
fild dword [ebp - 0x150]
fstp qword [ebp - 0x150]
fld qword [ebp - 0x150]
fmul qword [0x581b39]
fstp qword [ebp - 0x158]
push 0x80000601
push dword [ebp - 0x154]
push dword [ebp - 0x158]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x15c], eax
call fcn.0040f4b7
mov dword [ebp - 0x160], eax
push dword [ebp - 0x160]
push dword [ebp - 0x15c]
push dword [ebp - 0x144]
push dword [ebp - 0x12c]
push dword [ebp - 0x114]
push dword [ebp - 0xfc]
push dword [ebp - 0x28]
mov ecx, 7
call fcn.0040108a
add esp, 0x1c
mov dword [ebp - 0x164], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x40936c
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x40937f
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x12c]
test ebx, ebx
je 0x409392
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x144]
test ebx, ebx
je 0x4093a5
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x15c]
test ebx, ebx
je 0x4093b8
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x160]
test ebx, ebx
je 0x4093cb
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0x164]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x4093e2
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x4093f9
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 0xe8]
push eax
call fcn.0040f875
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x409437
push ebx
call fcn.004a31d2
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x2c]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf0], eax
push dword [ebp - 0xf0]
push dword [ebp - 0xec]
mov ecx, 2
call fcn.0040108a
add esp, 8
mov dword [ebp - 0xf4], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x40948b
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x40949e
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x4094b5
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
cmp dword [ebp + 0x18], 0
jne 0x40952c
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x4094d6
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x40952c
call fcn.0040fa85
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40951e
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov dword [0x6046d0], 1
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40953f
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0xc8f
jne 0x409572
push 0x38799
call fcn.00414500
cmp dword [0x6046d4], 0x1e55e
je 0x40958a
push dword [ebp + 8]
call fcn.00414904
mov eax, dword [ebp - 4]
mov dword [ebp - 0x30], eax
mov eax, 0x58176f
test eax, eax
je 0x4095ac
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x4095bd
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
mov eax, 0x58176f
test eax, eax
je 0x4095dd
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6046d8]
test ebx, ebx
je 0x4095f1
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x6046d8], eax
mov eax, 0x58176f
test eax, eax
je 0x409613
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6046dc]
test ebx, ebx
je 0x409627
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x6046dc], eax
mov eax, 0x58176f
test eax, eax
je 0x409649
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6046e0]
test ebx, ebx
je 0x40965d
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x6046e0], eax
mov eax, 0x56a137
push eax
mov ebx, dword [0x6046e4]
test ebx, ebx
je 0x40967c
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x6046e4], eax
mov dword [0x6046e8], 0
mov dword [0x6046ec], 0
mov dword [0x6046f0], 0
mov eax, dword [0x6046c4]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x581df9]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.004025dd
mov byte [0x6046c4], al
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x4096fa
push eax
mov ebx, eax
call fcn.0040101f
inc eax
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40970b
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x40972b
push eax
mov ebx, eax
call fcn.0040101f
inc eax
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6046f4]
test ebx, ebx
je 0x40973f
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x6046f4], eax
mov eax, 0x581e5a
push eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40975b
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
call fcn.0040fa85
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x409781
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x48], eax
call fcn.00416a4e
mov dword [0x6046f8], eax
call fcn.00416da0
mov dword [ebp - 0xe8], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xe8]
test eax, eax
jne 0x4097bc
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x4097e8
push ebx
call fcn.004a31d2
add esp, 4
mov dword [ebp - 0xf0], 0
push 0
push dword [ebp - 0xf0]
push 1
mov eax, 0x581e5c
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0xec]
push eax
call fcn.00407cc8
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x409833
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x409846
push ebx
call fcn.004a31d2
add esp, 4
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
push 1
mov eax, 0x581e5c
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xf8]
push eax
call fcn.004176ad
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x409891
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x4098a4
push ebx
call fcn.004a31d2
add esp, 4
lea eax, [ebp - 0x104]
push eax
call fcn.0040f55e
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x4098c9
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0x108]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4098e0
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
push 0x80000301
push 0
push dword [0x60469c]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xe8], eax
call fcn.00417923
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf0], eax
call fcn.00417c1b
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf8], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x409966
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xfc], eax
push 0x80000301
push 0
push dword [ebp - 0x44]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x100], eax
push 0x80000301
push 0
push dword [ebp - 0x48]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x104], eax
push 0x80000301
push 0
push dword [ebp - 0x30]
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x10c], 0
push 0
push dword [ebp - 0x10c]
mov dword [ebp - 0x110], 0
push 0
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x108]
push eax
call fcn.00407cc8
mov dword [ebp - 0x114], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x409a2f
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x409a42
push ebx
call fcn.004a31d2
add esp, 4
lea eax, [ebp - 0x114]
push eax
call fcn.0040f55e
mov dword [ebp - 0x118], eax
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x409a67
push ebx
call fcn.004a31d2
add esp, 4
call fcn.00417c80
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x120], eax
push 0x80000301
push 0
push dword [0x6046f8]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x124], eax
push dword [ebp - 0x124]
push dword [ebp - 0x3c]
push dword [ebp - 0x120]
push 0x581e6d
push dword [ebp - 0x4c]
push dword [ebp - 0x3c]
push dword [ebp - 0x118]
push dword [ebp - 0x3c]
push dword [ebp - 0x104]
push dword [ebp - 0x3c]
push dword [ebp - 0x100]
push dword [ebp - 0x3c]
push dword [ebp - 0xfc]
push dword [ebp - 0x3c]
push dword [ebp - 0xf8]
push dword [ebp - 0x3c]
push dword [ebp - 0xf0]
push dword [ebp - 0x3c]
push dword [ebp - 0x38]
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push 0x581e5a
push dword [ebp - 0xe8]
push 0x581e6f
mov ecx, 0x18
call fcn.0040108a
add esp, 0x60
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x409b40
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x409b53
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x409b66
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x409b79
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x409b8c
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x409b9f
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x118]
test ebx, ebx
je 0x409bb2
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x409bc5
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x124]
test ebx, ebx
je 0x409bd8
push ebx
call fcn.004a31d2
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x128]
test eax, eax
jne 0x409bee
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x12c], eax
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x409c1a
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0x12c]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x409c31
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
cmp dword [ebp + 0x18], 1
jne 0x409cfe
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x409c52
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xe8], eax
push dword [ebp - 0xe8]
push 0x581e78
mov ecx, 2
call fcn.0040108a
add esp, 8
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x409c9c
push ebx
call fcn.004a31d2
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x409cb2
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x409cde
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x409cf5
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
jmp 0x409db8
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x409d11
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xe8], eax
push dword [ebp - 0xe8]
push 0x581e81
mov ecx, 2
call fcn.0040108a
add esp, 8
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x409d5b
push ebx
call fcn.004a31d2
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x409d71
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x409d9d
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x409db4
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
call fcn.00417de1
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x409dda
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x54], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x54]
test eax, eax
jne 0x409df1
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
push 0x80000301
push 0
push 0x22a2
push 1
mov ebx, 0x4a4360
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push dword [ebp - 0xec]
push dword [ebp - 0x54]
push 0x5818c0
push dword [ebp - 0x50]
mov ecx, 5
call fcn.00403364
add esp, 0x14
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x409e9f
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x409eb2
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x409ec9
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x58], 0xfb29d4c0
mov dword [ebp - 0x5c], 0xa48a274a
dec dword [0x6046b4]
fld qword [0x6046b8]
fadd qword [0x581b39]
fstp qword [0x6046b8]
fld dword [0x6046c0]
fadd qword [0x581b18]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x6046c0], eax
mov dword [0x6046a8], 0
cmp dword [ebp - 0x1c], 0
je 0x409f83
call fcn.0040f32f
mov dword [ebp - 0xf4], eax
fild dword [ebp - 0xf4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
fild dword [ebp - 0x1c]
fstp qword [ebp - 0xfc]
fsub qword [ebp - 0xfc]
fstp qword [ebp - 0x104]
fld qword [ebp - 0x104]
fsub qword [0x581e86]
fcomp qword [0x581e8e]
fnstsw ax
test ah, 1
jne 0x409f83
xor eax, eax
jmp 0x409f88
mov eax, 1
test eax, eax
je 0x40a0f5
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x409fa3
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xec], 0
push 0
push dword [ebp - 0xec]
mov dword [ebp - 0xf0], 0
push 0
push dword [ebp - 0xf0]
mov dword [ebp - 0xf4], 0
push 0
lea eax, [ebp - 0xf4]
push eax
mov dword [ebp - 0xf8], 0
push 0
push dword [ebp - 0xf8]
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
mov dword [ebp - 0x100], 0
push 0
push dword [ebp - 0x100]
lea eax, [ebp - 0xe8]
push eax
call fcn.00419cee
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x40a04e
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0x104]
push eax
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x40a065
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x60], eax
call fcn.0040f32f
mov dword [ebp - 0x1c], eax
dec dword [0x6046b4]
fld qword [0x6046b8]
fadd qword [0x581b39]
fstp qword [0x6046b8]
fld dword [0x6046c0]
fadd qword [0x581b18]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x6046c0], eax
mov eax, dword [0x6046c4]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x581df9]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.004025dd
mov byte [0x6046c4], al
jmp 0x40a124
mov eax, 0x581e96
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a10d
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov dword [ebp - 0x64], 1
mov dword [0x6046a8], 0xffffffff
cmp dword [0x6046a8], 0x849
jne 0x40a139
call fcn.0041cb9d
cmp dword [ebp - 0x64], 0
jne 0x40ce22
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x40a156
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x40a1a9
mov eax, 0x581eb3
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a194
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov dword [0x6046a8], 0xffffffff
jmp 0x40ce22
push 0x80000301
push 0
push 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x40a1c8
mov eax, 0x58176f
push eax
push 2
mov ebx, 0x4a5020
call fcn.004a31ea
add esp, 0x1c
mov dword [ebp - 0xe8], eax
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xe8]
test eax, eax
jne 0x40a209
mov eax, 0x58176f
push eax
push 3
mov ebx, 0x4a4e60
call fcn.004a31ea
add esp, 0x28
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0xec], ecx
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x40a241
push ebx
call fcn.004a31d2
add esp, 4
mov ecx, dword [ebp - 0xec]
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf4]
cmp ecx, 0x80000101
jne 0x40a262
and eax, 0xff
jmp 0x40a291
cmp ecx, 0x80000201
jne 0x40a26d
cwde
jmp 0x40a291
mov dword [ebp - 0xfc], eax
cmp ecx, 0x80000301
je 0x40a297
cmp ecx, 0x80000401
jne 0x40a29f
mov dword [ebp - 0xf8], edx
fild qword [ebp - 0xfc]
jmp 0x40a2ce
mov dword [ebp - 0xfc], eax
fild dword [ebp - 0xfc]
jmp 0x40a2ce
cmp ecx, 0x80000501
jne 0x40a2af
fld dword [ebp - 0xfc]
jmp 0x40a2ce
cmp ecx, 0x80000601
je 0x40a2e0
push 0x20cc
push 0x401e40f
push 2
call fcn.004a31de
add esp, 0xc
fstp qword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov edx, dword [ebp - 0xf8]
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], edx
fld qword [ebp - 0xfc]
fsub qword [0x581ece]
ftst
fnstsw ax
test ah, 1
je 0x40a303
fchs
fcomp qword [0x581ed6]
fnstsw ax
test ah, 0x41
mov eax, 0
setne al
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0xec]
cmp ecx, reloc.WS2_32.dll_connect
je 0x40a336
cmp ecx, reloc.WS2_32.dll_getpeername
jne 0x40a349
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x40a349
push ebx
call fcn.004a31d2
add esp, 4
cmp dword [ebp - 0x100], 0
je 0x40a579
push 0x80000301
push 0
push 8
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x40a375
mov eax, 0x58176f
push eax
push 2
mov ebx, 0x4a5020
call fcn.004a31ea
add esp, 0x1c
mov dword [ebp - 0xe8], eax
push 0x80000301
push 0
push 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xe8]
test eax, eax
jne 0x40a3b0
mov eax, 0x58176f
push eax
push 2
mov ebx, 0x4a4fe0
call fcn.004a31ea
add esp, 0x1c
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x40a3dc
push ebx
call fcn.004a31d2
add esp, 4
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x40a404
mov eax, 0x58176f
push eax
push 3
mov ebx, 0x4a4e60
call fcn.004a31ea
add esp, 0x28
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0xf0], ecx
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x40a43c
push ebx
call fcn.004a31d2
add esp, 4
mov ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf8]
cmp ecx, 0x80000101
jne 0x40a45d
and eax, 0xff
jmp 0x40a4be
cmp ecx, 0x80000201
jne 0x40a468
cwde
jmp 0x40a4be
cmp ecx, 0x80000301
je 0x40a4be
cmp ecx, 0x80000401
je 0x40a4be
mov dword [ebp - 0x100], eax
cmp ecx, 0x80000501
je 0x40a4a5
cmp ecx, 0x80000601
je 0x40a4ad
push 0x2151
push 0x401e40f
push 2
call fcn.004a31de
add esp, 0xc
fld dword [ebp - 0x100]
jmp 0x40a4b9
mov dword [ebp - 0xfc], edx
fld qword [ebp - 0x100]
call fcn.004025dd
mov dword [ebp - 0x68], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x40a4d4
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fild dword [ebp - 0x68]
fstp qword [ebp - 0xf8]
fsub qword [ebp - 0xf8]
fsub qword [0x581ede]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004025dd
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x40a540
mov eax, 0x58176f
push eax
push 2
mov ebx, 0x4a4fe0
call fcn.004a31ea
add esp, 0x1c
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x104]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x40a570
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
jmp 0x40a5a8
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x40a593
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x40a5a4
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
dec dword [0x6046b4]
fld qword [0x6046b8]
fadd qword [0x581b39]
fstp qword [0x6046b8]
fld dword [0x6046c0]
fadd qword [0x581b18]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x6046c0], eax
mov eax, dword [0x6046c4]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x581df9]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.004025dd
mov byte [0x6046c4], al
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40a63a
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x40a70e
mov eax, 0x581ee6
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40a678
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov dword [ebp - 0xe8], 0
push 0
push dword [ebp - 0xe8]
push 1
mov eax, 0x581ef2
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
push 1
push 0x10
push dword [ebp + 0x10]
call fcn.0041ccd2
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x40a6c6
push ebx
call fcn.004a31d2
add esp, 4
mov dword [ebp - 0xe8], esp
push 0
push 0xffffffff
mov eax, 0x15
call fcn.004a31e4
cmp dword [ebp - 0xe8], esp
je 0x40a6ff
push 0x243d
push 0x401e40f
push 6
call fcn.004a31de
add esp, 0xc
mov eax, 1
cmp eax, 2
jne 0x40a6ff
jmp 0x40ce22
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x40a728
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x40a739
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x70], eax
cmp dword [ebp + 0x18], 1
jne 0x40a81f
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40a75a
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x40a795
mov eax, 0x56a137
push eax
push 2
mov ebx, 0x4a3aa0
call fcn.004a31ea
add esp, 0x1c
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x40a7c1
push ebx
call fcn.004a31d2
add esp, 4
mov eax, 0x581f03
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0xf0]
push eax
call fcn.0041cd39
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x40a7f8
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x40a80b
push ebx
call fcn.004a31d2
add esp, 4
cmp dword [ebp - 0xf8], 1
jne 0x40a81f
mov eax, 1
jmp 0x40a824
mov eax, 0
test eax, eax
je 0x40a971
push 0x80000301
push 0
push 0x20
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40a857
mov eax, 0x58176f
push eax
push 3
mov ebx, 0x4a5060
call fcn.004a31ea
add esp, 0x28
mov dword [ebp - 0xe8], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xe8]
test eax, eax
jne 0x40a886
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x40a8b2
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40a8c9
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40a8e0
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fsub qword [0x581f06]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.004025dd
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40a93d
mov eax, 0x58176f
push eax
push 2
mov ebx, 0x4a5020
call fcn.004a31ea
add esp, 0x1c
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x40a96d
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
dec dword [0x6046b4]
fld qword [0x6046b8]
fadd qword [0x581b39]
fstp qword [0x6046b8]
fld dword [0x6046c0]
fadd qword [0x581b18]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x6046c0], eax
mov eax, dword [0x6046c4]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x581df9]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.004025dd
mov byte [0x6046c4], al
call fcn.0040fa85
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40aa12
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
call fcn.00417c1b
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fmul qword [0x581e4a]
fstp qword [ebp - 0xf8]
push 0x80000601
push dword [ebp - 0xf4]
push dword [ebp - 0xf8]
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0x100], 0
push 0
push dword [ebp - 0x100]
mov dword [ebp - 0x104], 0
push 0
lea eax, [ebp - 0x104]
push eax
push 0x60468c
call fcn.00417a29
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x40aab0
push ebx
call fcn.004a31d2
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x108]
test eax, eax
jne 0x40aac6
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x10c], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x40aaf2
push ebx
call fcn.004a31d2
add esp, 4
push dword [ebp - 0x10c]
push dword [ebp - 0x28]
push dword [ebp - 0x38]
push dword [ebp - 0xfc]
push dword [ebp - 0x40]
mov ecx, 5
call fcn.0040108a
add esp, 0x14
mov dword [ebp - 0x110], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x40ab2d
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x10c]
test ebx, ebx
je 0x40ab40
push ebx
call fcn.004a31d2
add esp, 4
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x110]
test eax, eax
jne 0x40ab56
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x114], eax
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x40ab82
push ebx
call fcn.004a31d2
add esp, 4
mov dword [ebp - 0x118], 0
push 0
push dword [ebp - 0x118]
mov dword [ebp - 0x11c], 0
push 0
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x114]
push eax
call fcn.004176ad
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x40abcc
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x40abdf
push ebx
call fcn.004a31d2
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x58]
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0x124], eax
push dword [ebp - 0x124]
push dword [ebp - 0x120]
mov ecx, 2
call fcn.00403364
add esp, 8
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x40ac33
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x124]
test ebx, ebx
je 0x40ac46
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0x128]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40ac5d
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
push 0x80000301
push 0
push 0x2649ccc8
push 1
mov ebx, 0x4a3fe0
call fcn.004a31ea
add esp, 0x10
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x4a4c30
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x40acb5
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0xe8], 0
push 0
push dword [ebp - 0xe8]
push 1
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00417a29
mov dword [ebp - 0xec], eax
push 1
push 1
push 1
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0xec]
push eax
call fcn.004030e0
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x40ad12
push ebx
call fcn.004a31d2
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x40ad29
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
push 0x80000301
push 0
push 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x78]
test eax, eax
jne 0x40ad4c
mov eax, 0x58176f
push eax
push 2
mov ebx, 0x4a5020
call fcn.004a31ea
add esp, 0x1c
mov dword [ebp - 0xe8], eax
push 0
push 0
push 0
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xe8]
test eax, eax
jne 0x40ad8d
mov eax, 0x58176f
push eax
push 3
mov ebx, 0x4a4e60
call fcn.004a31ea
add esp, 0x28
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0xec], ecx
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x40adc5
push ebx
call fcn.004a31d2
add esp, 4
mov ecx, dword [ebp - 0xec]
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf4]
cmp ecx, 0x80000101
jne 0x40ade6
and eax, 0xff
jmp 0x40ae47
cmp ecx, 0x80000201
jne 0x40adf1
cwde
jmp 0x40ae47
cmp ecx, 0x80000301
je 0x40ae47
cmp ecx, 0x80000401
je 0x40ae47
mov dword [ebp - 0xfc], eax
cmp ecx, 0x80000501
je 0x40ae2e
cmp ecx, 0x80000601
je 0x40ae36
fld dword [ebp - 0xfc]
jmp 0x40ae42
mov dword [0x6046a8], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x78]
test eax, eax
jne 0x40ae5f
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a56e0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x40ae8f
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x7c], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x581e5a
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x40aeb8
cmp dword [0x604728], 0
jne 0x40ce5a
push 0x60472c
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x1c]
test eax, eax
je 0x40ce5a
push 0x60472c
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
jmp 0x40ce5a
dec dword [0x6046b4]
fld qword [0x6046b8]
fadd qword [0x581b39]
fstp qword [0x6046b8]
fld dword [0x6046c0]
fadd qword [0x581b18]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x6046c0], eax
mov eax, dword [0x6046c4]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x581df9]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.004025dd
mov byte [0x6046c4], al
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0x6046e0]
test eax, eax
jne 0x40ceee
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x40cf7d
mov eax, 0x58176f
test eax, eax
je 0x40cf30
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x604704]
test ebx, ebx
je 0x40cf44
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x604704], eax
mov eax, 0x56a137
push eax
mov ebx, dword [0x6046e4]
test ebx, ebx
je 0x40cf63
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x6046e4], eax
mov dword [0x6046ec], 0
mov dword [0x6046f0], 0
mov ebx, dword [ebp - 0x80]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40cf9b
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40cf97
imul eax, dword [ebx]
jmp 0x40cf8c
mov ecx, eax
test ecx, ecx
je 0x40cfba
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40cfb3
push ebx
push eax
call fcn.004a31d2
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40cfa1
call fcn.004a31d2
add esp, 4
mov eax, 0x58176f
mov dword [ebp - 0x80], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40cfdd
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
push eax
call fcn.0041e528
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x40d013
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x40d02a
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40d074
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x78]
test eax, eax
jne 0x40d08b
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
push eax
call fcn.0041e528
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x40d0c1
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xd0]
test eax, eax
jne 0x40d0db
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xd0]
test ebx, ebx
je 0x40d128
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0xd0], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xd4]
test eax, eax
jne 0x40d145
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xd4]
test ebx, ebx
je 0x40d192
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0xd4], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40d1ac
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40d1f6
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x40d20d
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x40d257
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x7c], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xd8]
test eax, eax
jne 0x40d271
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xd8]
test ebx, ebx
je 0x40d2be
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0xd8], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xdc]
test eax, eax
jne 0x40d2db
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xdc]
test ebx, ebx
je 0x40d328
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0xdc], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0xe0]
test eax, eax
jne 0x40d345
mov eax, 0x56a137
push eax
push 1
mov ebx, 0x4a38b0
call fcn.004a31ea
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4a4ce0
call fcn.004a31ea
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xe0]
test ebx, ebx
je 0x40d392
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0xe0], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xe4]
test eax, eax
jne 0x40d3af
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
push eax
call fcn.0041e528
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xe4]
test ebx, ebx
je 0x40d3e8
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0xe4], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xc0]
test eax, eax
jne 0x40d405
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
push eax
call fcn.0041e528
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xc0]
test ebx, ebx
je 0x40d43e
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0xc0], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x40d458
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
push eax
call fcn.0041e528
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40d48e
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x40d4a5
mov eax, 0x58176f
push eax
push 1
mov ebx, 0x4a38d0
call fcn.004a31ea
add esp, 0x10
push eax
call fcn.0041e528
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40d4db
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
dec dword [0x6046b4]
fld qword [0x6046b8]
fadd qword [0x581b39]
fstp qword [0x6046b8]
fld dword [0x6046c0]
fadd qword [0x581b18]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x6046c0], eax
mov eax, dword [0x6046c4]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x581df9]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.004025dd
mov byte [0x6046c4], al
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
test eax, eax
je 0x40d57c
push eax
mov ebx, eax
call fcn.0040101f
inc eax
push eax
call fcn.004a31d8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6046ac]
test ebx, ebx
je 0x40d590
push ebx
call fcn.004a31d2
add esp, 4
pop eax
mov dword [0x6046ac], eax
push 0x80000301
push 0
push dword [0x604694]
push 1
mov eax, 4
mov ebx, 0x50cdd0
call fcn.004a31fc
add esp, 0x10
mov eax, dword [ebp - 0xc4]
jmp 0x40d5f4
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40d605
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x24]
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40d621
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40d631
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40d641
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40d651
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40d661
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40d671
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40d681
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x40d691
push ebx
call fcn.004a31d2
add esp, 4
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x40d6a1