Function at 0x405272
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.00445b77
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.00445b77
add esp, 4
mov dword [ebp - 0x80], eax
mov edi, eax
mov esi, 0x54d55a
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.00445b77
add esp, 4
mov dword [ebp - 0xcc], eax
mov edi, eax
mov esi, 0x54d55a
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 0x4054a5
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, 6
call fcn.00445b8f
cmp dword [ebp - 0xe8], esp
je 0x405649
push 0xca8
push 0x4049793
push 6
call fcn.00445b89
add esp, 0xc
push 0x80000301
push 0
push dword [0x659160]
push 1
mov eax, 4
mov ebx, 0x4aad00
call fcn.00445b9b
add esp, 0x10
mov dword [0x659164], 0
mov dword [0x659168], 0
mov dword [0x65916c], 0
mov dword [0x659170], 0
mov byte [0x659174], 0
call fcn.0040a17c
call fcn.0040bd5f
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x18]
mov dword [0x659178], eax
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
je 0x4056cf
push eax
mov ebx, eax
call fcn.0040138e
inc eax
push eax
call fcn.00445b77
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 0x4056e0
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov ebx, dword [0x65917c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405705
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405701
imul eax, dword [ebx]
jmp 0x4056f6
mov ecx, eax
test ecx, ecx
je 0x405745
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x405720
push ebx
call fcn.00445b7d
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x405734
push ebx
call fcn.00445b7d
add esp, 4
pop ebx
call fcn.00445b7d
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40570b
call fcn.00445b7d
add esp, 4
mov eax, 0x54d55a
mov dword [0x65917c], eax
mov dword [ebp - 0xe8], esp
mov eax, dword [ebp - 0x24]
push eax
push 0x10
call fcn.00445b77
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, 7
call fcn.00445b8f
cmp dword [ebp - 0xe8], esp
je 0x4057ff
push 0xe06
push 0x4049793
push 6
call fcn.00445b89
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.00445b7d
add esp, 4
pop eax
call fcn.0040bd5f
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 [0x54d58c]
fstp qword [ebp - 0x100]
push 0x80000601
push dword [ebp - 0xfc]
push dword [ebp - 0x100]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 [0x54d58c]
fstp qword [ebp - 0x118]
push 0x80000601
push dword [ebp - 0x114]
push dword [ebp - 0x118]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 [0x54d58c]
fstp qword [ebp - 0x130]
push 0x80000601
push dword [ebp - 0x12c]
push dword [ebp - 0x130]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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.00404c8d
add esp, 0x10
mov dword [ebp - 0x138], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x4059f7
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x405a0a
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x405a1d
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x134]
test ebx, ebx
je 0x405a30
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0x138]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x405a47
push ebx
call fcn.00445b7d
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 [0x54d58c]
fstp qword [ebp - 0xf8]
push 0x80000601
push dword [ebp - 0xf4]
push dword [ebp - 0xf8]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 [0x54d594]
fstp qword [ebp - 0x110]
push 0x80000601
push dword [ebp - 0x10c]
push dword [ebp - 0x110]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 [0x54d58c]
fstp qword [ebp - 0x128]
push 0x80000601
push dword [ebp - 0x124]
push dword [ebp - 0x128]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 [0x54d59c]
fstp qword [ebp - 0x140]
push 0x80000601
push dword [ebp - 0x13c]
push dword [ebp - 0x140]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 [0x54d58c]
fstp qword [ebp - 0x158]
push 0x80000601
push dword [ebp - 0x154]
push dword [ebp - 0x158]
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x15c], eax
call fcn.0040bee7
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.00404c8d
add esp, 0x1c
mov dword [ebp - 0x164], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x405c92
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x405ca5
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x12c]
test ebx, ebx
je 0x405cb8
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x144]
test ebx, ebx
je 0x405ccb
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x15c]
test ebx, ebx
je 0x405cde
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x160]
test ebx, ebx
je 0x405cf1
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0x164]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x405d08
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x405d1f
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 0xe8]
push eax
call fcn.0040c2a5
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x405d5d
push ebx
call fcn.00445b7d
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x2c]
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf0], eax
push dword [ebp - 0xf0]
push dword [ebp - 0xec]
mov ecx, 2
call fcn.00404c8d
add esp, 8
mov dword [ebp - 0xf4], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x405db1
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x405dc4
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x405ddb
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
cmp dword [ebp + 0x18], 0
jne 0x405e52
push getpeername
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x405dfc
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x405e52
call fcn.0040c593
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x405e44
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov dword [0x659180], 1
push getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x405e65
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0xc8f
jne 0x405e98
push 0x38799
call fcn.00411787
cmp dword [0x659184], 0x1e55e
je 0x405eb0
push dword [ebp + 8]
call fcn.00411b8b
mov eax, dword [ebp - 4]
mov dword [ebp - 0x30], eax
mov eax, 0x54d55a
test eax, eax
je 0x405ed2
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00445b77
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 0x405ee3
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
mov eax, 0x54d55a
test eax, eax
je 0x405f03
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00445b77
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x659188]
test ebx, ebx
je 0x405f17
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x659188], eax
mov eax, 0x54d55a
test eax, eax
je 0x405f39
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00445b77
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x65918c]
test ebx, ebx
je 0x405f4d
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x65918c], eax
mov eax, 0x54d55a
test eax, eax
je 0x405f6f
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00445b77
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x659190]
test ebx, ebx
je 0x405f83
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x659190], eax
mov eax, 0x4f16eb
push eax
mov ebx, dword [0x659194]
test ebx, ebx
je 0x405fa2
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x659194], eax
mov dword [0x659198], 0
mov dword [0x65919c], 0
mov dword [0x6591a0], 0
mov eax, dword [0x659174]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x54d5a4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.00403654
mov byte [0x659174], al
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x406020
push eax
mov ebx, eax
call fcn.0040138e
inc eax
push eax
call fcn.00445b77
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 0x406031
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x406051
push eax
mov ebx, eax
call fcn.0040138e
inc eax
push eax
call fcn.00445b77
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6591a4]
test ebx, ebx
je 0x406065
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x6591a4], eax
mov eax, 0x54d5ac
push eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x406081
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
call fcn.0040c593
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4060a7
push ebx
call fcn.00445b7d
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.00414a21
mov dword [0x6591a8], eax
call fcn.004155fd
mov dword [ebp - 0xe8], eax
push getpeername
push 0
mov eax, dword [ebp - 0xe8]
test eax, eax
jne 0x4060e2
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x40610e
push ebx
call fcn.00445b7d
add esp, 4
mov dword [ebp - 0xf0], 0
push 0
push dword [ebp - 0xf0]
push 1
mov eax, 0x54d5ae
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0xec]
push eax
call fcn.00415f0a
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x406159
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x40616c
push ebx
call fcn.00445b7d
add esp, 4
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
push 1
mov eax, 0x54d5ae
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xf8]
push eax
call fcn.00416130
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x4061b7
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x4061ca
push ebx
call fcn.00445b7d
add esp, 4
lea eax, [ebp - 0x104]
push eax
call fcn.0040bf8e
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x4061ef
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0x108]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x406206
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
push 0x80000301
push 0
push dword [0x6591ac]
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xe8], eax
call fcn.00417578
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf0], eax
call fcn.00417870
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf8], eax
push getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40628c
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xfc], eax
push 0x80000301
push 0
push dword [ebp - 0x44]
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x100], eax
push 0x80000301
push 0
push dword [ebp - 0x48]
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x104], eax
push 0x80000301
push 0
push dword [ebp - 0x30]
push 1
mov ebx, 0x4475c0
call fcn.00445b83
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.00415f0a
mov dword [ebp - 0x114], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x406355
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x406368
push ebx
call fcn.00445b7d
add esp, 4
lea eax, [ebp - 0x114]
push eax
call fcn.0040bf8e
mov dword [ebp - 0x118], eax
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x40638d
push ebx
call fcn.00445b7d
add esp, 4
call fcn.004178d5
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x120], eax
push 0x80000301
push 0
push dword [0x6591a8]
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x124], eax
push dword [ebp - 0x124]
push dword [ebp - 0x3c]
push dword [ebp - 0x120]
push 0x54d5bf
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 0x54d5ac
push dword [ebp - 0xe8]
push 0x54d5c1
mov ecx, 0x18
call fcn.00404c8d
add esp, 0x60
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x406466
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x406479
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x40648c
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x40649f
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x4064b2
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x4064c5
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x118]
test ebx, ebx
je 0x4064d8
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x4064eb
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x124]
test ebx, ebx
je 0x4064fe
push ebx
call fcn.00445b7d
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x128]
test eax, eax
jne 0x406514
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x12c], eax
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x406540
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0x12c]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x406557
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
cmp dword [ebp + 0x18], 1
jne 0x406624
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x406578
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xe8], eax
push dword [ebp - 0xe8]
push 0x54d5ca
mov ecx, 2
call fcn.00404c8d
add esp, 8
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x4065c2
push ebx
call fcn.00445b7d
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x4065d8
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x406604
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40661b
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
jmp 0x4066de
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x406637
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xe8], eax
push dword [ebp - 0xe8]
push 0x54d5d3
mov ecx, 2
call fcn.00404c8d
add esp, 8
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x406681
push ebx
call fcn.00445b7d
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x406697
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x4066c3
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4066da
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
call fcn.00417a36
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x406700
push ebx
call fcn.00445b7d
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 0x406717
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
push 0x80000301
push 0
push 0x22a2
push 1
mov ebx, 0x446ba0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push dword [ebp - 0xec]
push dword [ebp - 0x54]
push 0x54d5d8
push dword [ebp - 0x50]
mov ecx, 5
call fcn.00405165
add esp, 0x14
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x4067c5
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x4067d8
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4067ef
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x58], 0x83a3ee9c
mov dword [ebp - 0x5c], 0xa860f3ec
dec dword [0x659164]
fld qword [0x659168]
fadd qword [0x54d58c]
fstp qword [0x659168]
fld dword [0x659170]
fadd qword [0x54d5e1]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x659170], eax
mov dword [0x6591b0], 0
cmp dword [ebp - 0x1c], 0
je 0x4068a9
call fcn.0040bd5f
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 [0x54d5e9]
fcomp qword [0x54d5f1]
fnstsw ax
test ah, 1
jne 0x4068a9
xor eax, eax
jmp 0x4068ae
mov eax, 1
test eax, eax
je 0x406a1b
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x4068c9
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
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.004198a2
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x406974
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0x104]
push eax
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x40698b
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x60], eax
call fcn.0040bd5f
mov dword [ebp - 0x1c], eax
dec dword [0x659164]
fld qword [0x659168]
fadd qword [0x54d58c]
fstp qword [0x659168]
fld dword [0x659170]
fadd qword [0x54d5e1]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x659170], eax
mov eax, dword [0x659174]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x54d5a4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.00403654
mov byte [0x659174], al
jmp 0x406a4a
mov eax, 0x54d5f9
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406a33
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov dword [ebp - 0x64], 1
mov dword [0x6591b0], 0xffffffff
cmp dword [0x6591b0], 0x849
jne 0x406a5f
call fcn.0041c751
cmp dword [ebp - 0x64], 0
jne 0x409748
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x406a7c
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x406acf
mov eax, 0x54d616
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406aba
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
mov dword [0x6591b0], 0xffffffff
jmp 0x409748
push 0x80000301
push 0
push 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x406aee
mov eax, 0x54d55a
push eax
push 2
mov ebx, 0x4478c0
call fcn.00445b83
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 0x406b2f
mov eax, 0x54d55a
push eax
push 3
mov ebx, 0x447700
call fcn.00445b83
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 0x406b67
push ebx
call fcn.00445b7d
add esp, 4
mov ecx, dword [ebp - 0xec]
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf4]
cmp ecx, 0x80000101
jne 0x406b88
and eax, 0xff
jmp 0x406bb7
cmp ecx, 0x80000201
jne 0x406b93
cwde
jmp 0x406bb7
mov dword [ebp - 0xfc], eax
cmp ecx, 0x80000301
je 0x406bbd
cmp ecx, 0x80000401
jne 0x406bc5
mov dword [ebp - 0xf8], edx
fild qword [ebp - 0xfc]
jmp 0x406bf4
mov dword [ebp - 0xfc], eax
fild dword [ebp - 0xfc]
jmp 0x406bf4
cmp ecx, 0x80000501
jne 0x406bd5
fld dword [ebp - 0xfc]
jmp 0x406bf4
cmp ecx, 0x80000601
je 0x406c06
push 0x20de
push 0x4049793
push 2
call fcn.00445b89
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 [0x54d631]
ftst
fnstsw ax
test ah, 1
je 0x406c29
fchs
fcomp qword [0x54d639]
fnstsw ax
test ah, 0x41
mov eax, 0
setne al
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0xec]
cmp ecx, 0x80000004
je 0x406c5c
cmp ecx, reloc.WS2_32.dll_getpeername
jne 0x406c6f
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x406c6f
push ebx
call fcn.00445b7d
add esp, 4
cmp dword [ebp - 0x100], 0
je 0x406e9f
push 0x80000301
push 0
push 8
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x406c9b
mov eax, 0x54d55a
push eax
push 2
mov ebx, 0x4478c0
call fcn.00445b83
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 0x406cd6
mov eax, 0x54d55a
push eax
push 2
mov ebx, 0x447880
call fcn.00445b83
add esp, 0x1c
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x406d02
push ebx
call fcn.00445b7d
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 0x406d2a
mov eax, 0x54d55a
push eax
push 3
mov ebx, 0x447700
call fcn.00445b83
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 0x406d62
push ebx
call fcn.00445b7d
add esp, 4
mov ecx, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf8]
cmp ecx, 0x80000101
jne 0x406d83
and eax, 0xff
jmp 0x406de4
cmp ecx, 0x80000201
jne 0x406d8e
cwde
jmp 0x406de4
cmp ecx, 0x80000301
je 0x406de4
cmp ecx, 0x80000401
je 0x406de4
mov dword [ebp - 0x100], eax
cmp ecx, 0x80000501
je 0x406dcb
cmp ecx, 0x80000601
je 0x406dd3
push 0x2163
push 0x4049793
push 2
call fcn.00445b89
add esp, 0xc
fld dword [ebp - 0x100]
jmp 0x406ddf
mov dword [ebp - 0xfc], edx
fld qword [ebp - 0x100]
call fcn.00403654
mov dword [ebp - 0x68], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x406dfa
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
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 [0x54d641]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.00403654
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x60]
test eax, eax
jne 0x406e66
mov eax, 0x54d55a
push eax
push 2
mov ebx, 0x447880
call fcn.00445b83
add esp, 0x1c
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x104]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x406e96
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
jmp 0x406ece
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x406eb9
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00445b77
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 0x406eca
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
dec dword [0x659164]
fld qword [0x659168]
fadd qword [0x54d58c]
fstp qword [0x659168]
fld dword [0x659170]
fadd qword [0x54d5e1]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x659170], eax
mov eax, dword [0x659174]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x54d5a4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.00403654
mov byte [0x659174], al
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x406f60
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x407034
mov eax, 0x54d649
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406f9e
push ebx
call fcn.00445b7d
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, 0x54d655
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0xec]
push eax
push 1
push 0x10
push dword [ebp + 0x10]
call fcn.0041c886
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x406fec
push ebx
call fcn.00445b7d
add esp, 4
mov dword [ebp - 0xe8], esp
push 0
push 0xffffffff
mov eax, 8
call fcn.00445b8f
cmp dword [ebp - 0xe8], esp
je 0x407025
push 0x244f
push 0x4049793
push 6
call fcn.00445b89
add esp, 0xc
mov eax, 1
cmp eax, 2
jne 0x407025
jmp 0x409748
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x40704e
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00445b77
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 0x40705f
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x70], eax
cmp dword [ebp + 0x18], 1
jne 0x407145
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x407080
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
push 0x80000301
push 0
push 2
push getpeername
push 0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x4070bb
mov eax, 0x4f16eb
push eax
push 2
mov ebx, 0x4462e0
call fcn.00445b83
add esp, 0x1c
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x4070e7
push ebx
call fcn.00445b7d
add esp, 4
mov eax, 0x54d666
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0xf0]
push eax
call fcn.0041c8ed
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf0]
test ebx, ebx
je 0x40711e
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x407131
push ebx
call fcn.00445b7d
add esp, 4
cmp dword [ebp - 0xf8], 1
jne 0x407145
mov eax, 1
jmp 0x40714a
mov eax, 0
test eax, eax
je 0x407297
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 0x40717d
mov eax, 0x54d55a
push eax
push 3
mov ebx, 0x447900
call fcn.00445b83
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 0x4071ac
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov ebx, dword [ebp - 0xe8]
test ebx, ebx
je 0x4071d8
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x4071ef
push ebx
call fcn.00445b7d
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 0x407206
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fsub qword [0x54d669]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
call fcn.00403654
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x407263
mov eax, 0x54d55a
push eax
push 2
mov ebx, 0x4478c0
call fcn.00445b83
add esp, 0x1c
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x407293
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
dec dword [0x659164]
fld qword [0x659168]
fadd qword [0x54d58c]
fstp qword [0x659168]
fld dword [0x659170]
fadd qword [0x54d5e1]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x659170], eax
mov eax, dword [0x659174]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x54d5a4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.00403654
mov byte [0x659174], al
call fcn.0040c593
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x407338
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
call fcn.00417870
mov dword [ebp - 0xf0], eax
fild dword [ebp - 0xf0]
fstp qword [ebp - 0xf0]
fld qword [ebp - 0xf0]
fmul qword [0x54d594]
fstp qword [ebp - 0xf8]
push 0x80000601
push dword [ebp - 0xf4]
push dword [ebp - 0xf8]
push 1
mov ebx, 0x447f80
call fcn.00445b83
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 0x6591b4
call fcn.0041767e
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x4073d6
push ebx
call fcn.00445b7d
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x108]
test eax, eax
jne 0x4073ec
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x10c], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x407418
push ebx
call fcn.00445b7d
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.00404c8d
add esp, 0x14
mov dword [ebp - 0x110], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x407453
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x10c]
test ebx, ebx
je 0x407466
push ebx
call fcn.00445b7d
add esp, 4
push getpeername
push 0
mov eax, dword [ebp - 0x110]
test eax, eax
jne 0x40747c
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x114], eax
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x4074a8
push ebx
call fcn.00445b7d
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.00416130
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x4074f2
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x407505
push ebx
call fcn.00445b7d
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x58]
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0x124], eax
push dword [ebp - 0x124]
push dword [ebp - 0x120]
mov ecx, 2
call fcn.00405165
add esp, 8
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x407559
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x124]
test ebx, ebx
je 0x40756c
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0x128]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x407583
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
push 0x80000301
push 0
push 0x4bae0966
push 1
mov ebx, 0x446820
call fcn.00445b83
add esp, 0x10
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x4475c0
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x4075db
push ebx
call fcn.00445b7d
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.0041767e
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.0041c9f7
mov dword [ebp - 0xf0], eax
mov ebx, dword [ebp - 0xec]
test ebx, ebx
je 0x407638
push ebx
call fcn.00445b7d
add esp, 4
mov eax, dword [ebp - 0xf0]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x40764f
push ebx
call fcn.00445b7d
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 0x407672
mov eax, 0x54d55a
push eax
push 2
mov ebx, 0x4478c0
call fcn.00445b83
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 0x4076b3
mov eax, 0x54d55a
push eax
push 3
mov ebx, 0x447700
call fcn.00445b83
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 0x4076eb
push ebx
call fcn.00445b7d
add esp, 4
mov ecx, dword [ebp - 0xec]
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf4]
cmp ecx, 0x80000101
jne 0x40770c
and eax, 0xff
jmp 0x40776d
cmp ecx, 0x80000201
jne 0x407717
cwde
jmp 0x40776d
cmp ecx, 0x80000301
je 0x40776d
cmp ecx, 0x80000401
je 0x40776d
mov dword [ebp - 0xfc], eax
cmp ecx, 0x80000501
je 0x407754
cmp ecx, 0x80000601
je 0x40775c
fld dword [ebp - 0xfc]
jmp 0x407768
mov dword [0x6591b0], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x78]
test eax, eax
jne 0x407785
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x447f80
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
push eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x4077b5
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x7c], eax
push 0
push 0
push 0
push getpeername
push 0
push 0x54d5ac
push getpeername
push 0
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x4077de
cmp dword [0x6591e4], 0
jne 0x409780
push 0x6591e8
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x1c]
test eax, eax
je 0x409780
push 0x6591e8
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
jmp 0x409780
dec dword [0x659164]
fld qword [0x659168]
fadd qword [0x54d58c]
fstp qword [0x659168]
fld dword [0x659170]
fadd qword [0x54d5e1]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x659170], eax
mov eax, dword [0x659174]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x54d5a4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.00403654
mov byte [0x659174], al
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0x659190]
test eax, eax
jne 0x409814
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x4098a3
mov eax, 0x54d55a
test eax, eax
je 0x409856
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00445b77
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6591c0]
test ebx, ebx
je 0x40986a
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x6591c0], eax
mov eax, 0x4f16eb
push eax
mov ebx, dword [0x659194]
test ebx, ebx
je 0x409889
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x659194], eax
mov dword [0x65919c], 0
mov dword [0x6591a0], 0
mov ebx, dword [ebp - 0x80]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4098c1
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4098bd
imul eax, dword [ebx]
jmp 0x4098b2
mov ecx, eax
test ecx, ecx
je 0x4098e0
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x4098d9
push ebx
push eax
call fcn.00445b7d
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4098c7
call fcn.00445b7d
add esp, 4
mov eax, 0x54d55a
mov dword [ebp - 0x80], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x409903
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
push eax
call fcn.0041e2bf
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x6c]
test ebx, ebx
je 0x409939
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x6c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x409950
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40999a
push ebx
call fcn.00445b7d
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 0x4099b1
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
push eax
call fcn.0041e2bf
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x4099e7
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
push getpeername
push 0
mov eax, dword [ebp - 0xd0]
test eax, eax
jne 0x409a01
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xd0]
test ebx, ebx
je 0x409a4e
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0xd0], eax
push getpeername
push 0
mov eax, dword [ebp - 0xd4]
test eax, eax
jne 0x409a6b
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xd4]
test ebx, ebx
je 0x409ab8
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0xd4], eax
push getpeername
push 0
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x409ad2
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x409b1c
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
push getpeername
push 0
mov eax, dword [ebp - 0x7c]
test eax, eax
jne 0x409b33
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x409b7d
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x7c], eax
push getpeername
push 0
mov eax, dword [ebp - 0xd8]
test eax, eax
jne 0x409b97
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xd8]
test ebx, ebx
je 0x409be4
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0xd8], eax
push getpeername
push 0
mov eax, dword [ebp - 0xdc]
test eax, eax
jne 0x409c01
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xdc]
test ebx, ebx
je 0x409c4e
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0xdc], eax
push getpeername
push 0
mov eax, dword [ebp - 0xe0]
test eax, eax
jne 0x409c6b
mov eax, 0x4f16eb
push eax
push 1
mov ebx, 0x4460f0
call fcn.00445b83
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x447670
call fcn.00445b83
add esp, 0x10
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xe0]
test ebx, ebx
je 0x409cb8
push ebx
call fcn.00445b7d
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 0x409cd5
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
push eax
call fcn.0041e2bf
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xe4]
test ebx, ebx
je 0x409d0e
push ebx
call fcn.00445b7d
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 0x409d2b
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
push eax
call fcn.0041e2bf
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0xc0]
test ebx, ebx
je 0x409d64
push ebx
call fcn.00445b7d
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 0x409d7e
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
push eax
call fcn.0041e2bf
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x409db4
push ebx
call fcn.00445b7d
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 0x409dcb
mov eax, 0x54d55a
push eax
push 1
mov ebx, 0x446110
call fcn.00445b83
add esp, 0x10
push eax
call fcn.0041e2bf
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x409e01
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
dec dword [0x659164]
fld qword [0x659168]
fadd qword [0x54d58c]
fstp qword [0x659168]
fld dword [0x659170]
fadd qword [0x54d5e1]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fstp dword [ebp - 0xf0]
mov eax, dword [ebp - 0xf0]
mov dword [0x659170], eax
mov eax, dword [0x659174]
and eax, 0xff
mov dword [ebp - 0xec], eax
fild dword [ebp - 0xec]
fstp qword [ebp - 0xec]
fld qword [ebp - 0xec]
fadd qword [0x54d5a4]
fstp qword [ebp - 0xf4]
fld qword [ebp - 0xf4]
call fcn.00403654
mov byte [0x659174], al
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
test eax, eax
je 0x409ea2
push eax
mov ebx, eax
call fcn.0040138e
inc eax
push eax
call fcn.00445b77
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x6591ec]
test ebx, ebx
je 0x409eb6
push ebx
call fcn.00445b7d
add esp, 4
pop eax
mov dword [0x6591ec], eax
push 0x80000301
push 0
push dword [0x659160]
push 1
mov eax, 4
mov ebx, 0x4aad20
call fcn.00445b9b
add esp, 0x10
mov eax, dword [ebp - 0xc4]
jmp 0x409f1a
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x409f2b
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x24]
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x409f47
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x409f57
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x409f67
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x409f77
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x409f87
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x409f97
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x409fa7
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x409fb7
push ebx
call fcn.00445b7d
add esp, 4
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x409fc7