Function at 0x40249c
Capabilities:
Execute anti-debugging instructions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x170
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
mov dword [ebp - 0x24], 0
push 0x20
call fcn.004c8077
add esp, 4
mov dword [ebp - 0x28], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 8
rep stosd dword es:[edi], eax
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
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x88], 0
push 4
call fcn.004c8077
add esp, 4
mov dword [ebp - 0x8c], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx], 0x59b008
push 8
call fcn.004c8077
add esp, 4
mov dword [ebp - 0x90], eax
mov edi, eax
mov esi, 0x59aea8
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x9c], 0
push 8
call fcn.004c8077
add esp, 4
mov dword [ebp - 0xa0], eax
mov edi, eax
mov esi, 0x59aea8
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
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
mov dword [ebp - 0xcc], 0
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
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xf0], 0
jmp 0x402704
call 0x407b36
mov dword [ebp - 4], eax
fild dword [ebp - 4]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fsub qword [0x59ae19]
fstp qword [ebp - 0x100]
push 0x80000301
push 0
push 0x12
fld qword [ebp - 0x100]
call fcn.004021d5
push 0x80000301
push 0
push eax
push 2
mov ebx, 0x4cc430
call fcn.004c8083
add esp, 0x1c
mov dword [ebp - 0x104], eax
mov eax, 0x59ae21
mov dword [ebp - 0x108], eax
lea eax, [ebp - 0x108]
push eax
call fcn.00407b64
mov dword [ebp - 0x10c], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x40278e
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x10c]
xor ecx, ecx
test eax, eax
je 0x40279d
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x104]
xor ebx, ebx
test eax, eax
je 0x4027b1
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x4027c8
dec eax
test ecx, ecx
je 0x4027c8
call fcn.004021fc
add esp, 0xc
test eax, eax
mov eax, 0
sete al
mov dword [ebp - 0x110], eax
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x4027ee
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x10c]
test ebx, ebx
je 0x402801
push ebx
call fcn.004c8071
add esp, 4
cmp dword [ebp - 0x110], 0
je 0x4028b6
cmp dword [0x5f1ecc], 0
jne 0x4028b6
push 0x80000301
push 0
push 0
push 0x80000301
push 0
push 0x30
push 2
mov ebx, 0x4c8540
call fcn.004c8083
add esp, 0x1c
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf8], 0
push 0
push dword [ebp - 0xf8]
push 1
mov eax, 0x59ae46
mov dword [ebp - 0xfc], eax
lea eax, [ebp - 0xfc]
push eax
push 1
push dword [ebp - 0xf4]
mov eax, 0x59ae73
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
call fcn.00407df3
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x4028a3
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x4028b6
push ebx
call fcn.004c8071
add esp, 4
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
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 0x80000301
push 0
push dword [0x5f1ed0]
push 1
mov eax, 6
mov ebx, 0x554db0
call fcn.004c807d
add esp, 0x10
mov dword [0x5f1ed4], 0
mov dword [0x5f1ed8], 0
mov dword [0x5f1edc], 0
mov dword [0x5f1ee0], 0
mov byte [0x5f1ee4], 0
call fcn.00407e50
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0x18]
mov dword [0x5f1ee8], eax
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
je 0x402a5b
push eax
mov ebx, eax
call fcn.004022a8
inc eax
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x402a6c
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
mov ebx, dword [0x5f1eec]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402a91
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402a8d
imul eax, dword [ebx]
jmp 0x402a82
mov ecx, eax
test ecx, ecx
je 0x402ad1
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x402aac
push ebx
call fcn.004c8071
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x402ac0
push ebx
call fcn.004c8071
add esp, 4
pop ebx
call fcn.004c8071
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x402a97
call fcn.004c8071
add esp, 4
mov eax, 0x59aea8
mov dword [0x5f1eec], eax
mov dword [ebp - 0xf4], esp
mov eax, dword [ebp - 0x28]
push eax
push 0x10
call fcn.004c8077
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0xfc], ebx
mov dword [ebp - 0xf8], 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, 0
call fcn.004c8095
cmp dword [ebp - 0xf4], esp
je 0x402b81
push 6
call fcn.004c808f
add esp, 4
push eax
mov ebx, dword [ebp - 0xf8]
push ebx
mov edi, dword [ebp - 0xfc]
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.004c8071
add esp, 4
pop eax
call fcn.00407e50
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0xfc], ebx
mov ebx, dword [ebp - 0xfc]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x104], eax
fild dword [ebp - 0x104]
fstp qword [ebp - 0x104]
fld qword [ebp - 0x104]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x10c]
push 0x80000601
push dword [ebp - 0x108]
push dword [ebp - 0x10c]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x110], eax
mov ebx, dword [ebp - 0x28]
add ebx, 4
mov dword [ebp - 0x114], ebx
mov ebx, dword [ebp - 0x114]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x11c], eax
fild dword [ebp - 0x11c]
fstp qword [ebp - 0x11c]
fld qword [ebp - 0x11c]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x124]
push 0x80000601
push dword [ebp - 0x120]
push dword [ebp - 0x124]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0x28]
add ebx, 0xc
mov dword [ebp - 0x12c], ebx
mov ebx, dword [ebp - 0x12c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x134], eax
fild dword [ebp - 0x134]
fstp qword [ebp - 0x134]
fld qword [ebp - 0x134]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x13c]
push 0x80000601
push dword [ebp - 0x138]
push dword [ebp - 0x13c]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x140], eax
push dword [ebp - 0x140]
push dword [ebp - 0x128]
push dword [ebp - 0x110]
push dword [ebp - 0xf8]
mov ecx, 4
call fcn.00402313
add esp, 0x10
mov dword [ebp - 0x144], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x402d79
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x402d8c
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x402d9f
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x140]
test ebx, ebx
je 0x402db2
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x144]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x402dc9
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x28]
add ebx, 0x10
mov dword [ebp - 0xf4], ebx
mov ebx, dword [ebp - 0xf4]
mov ax, word [ebx]
cwde
mov dword [ebp - 0xfc], eax
fild dword [ebp - 0xfc]
fstp qword [ebp - 0xfc]
fld qword [ebp - 0xfc]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x104]
push 0x80000601
push dword [ebp - 0x100]
push dword [ebp - 0x104]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0x28]
add ebx, 0x14
mov dword [ebp - 0x10c], ebx
mov ebx, dword [ebp - 0x10c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x114], eax
fild dword [ebp - 0x114]
fstp qword [ebp - 0x114]
fld qword [ebp - 0x114]
fadd qword [0x59aeb8]
fstp qword [ebp - 0x11c]
push 0x80000601
push dword [ebp - 0x118]
push dword [ebp - 0x11c]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x28]
add ebx, 0x18
mov dword [ebp - 0x124], ebx
mov ebx, dword [ebp - 0x124]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x12c], eax
fild dword [ebp - 0x12c]
fstp qword [ebp - 0x12c]
fld qword [ebp - 0x12c]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x134]
push 0x80000601
push dword [ebp - 0x130]
push dword [ebp - 0x134]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x138], eax
mov ebx, dword [ebp - 0x28]
add ebx, 0x1c
mov dword [ebp - 0x13c], ebx
mov ebx, dword [ebp - 0x13c]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x144], eax
fild dword [ebp - 0x144]
fstp qword [ebp - 0x144]
fld qword [ebp - 0x144]
fmul qword [0x59aec0]
fstp qword [ebp - 0x14c]
push 0x80000601
push dword [ebp - 0x148]
push dword [ebp - 0x14c]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x150], eax
mov ebx, dword [ebp - 0x28]
add ebx, 8
mov dword [ebp - 0x154], ebx
mov ebx, dword [ebp - 0x154]
mov ax, word [ebx]
cwde
mov dword [ebp - 0x15c], eax
fild dword [ebp - 0x15c]
fstp qword [ebp - 0x15c]
fld qword [ebp - 0x15c]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x164]
push 0x80000601
push dword [ebp - 0x160]
push dword [ebp - 0x164]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x168], eax
call fcn.00407f45
mov dword [ebp - 0x16c], eax
push dword [ebp - 0x16c]
push dword [ebp - 0x168]
push dword [ebp - 0x150]
push dword [ebp - 0x138]
push dword [ebp - 0x120]
push dword [ebp - 0x108]
push dword [ebp - 0x2c]
mov ecx, 7
call fcn.00402313
add esp, 0x1c
mov dword [ebp - 0x170], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x403014
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x403027
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x138]
test ebx, ebx
je 0x40303a
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x150]
test ebx, ebx
je 0x40304d
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x168]
test ebx, ebx
je 0x403060
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x16c]
test ebx, ebx
je 0x403073
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x170]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40308a
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x4030a1
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
push eax
call fcn.004082f9
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x4030df
push ebx
call fcn.004c8071
add esp, 4
push 0x80000301
push 0
push dword [ebp - 4]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xfc], eax
push dword [ebp - 0xfc]
push dword [ebp - 0xf8]
mov ecx, 2
call fcn.00402313
add esp, 8
mov dword [ebp - 0x100], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x403133
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x403146
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x100]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40315d
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp + 0x18], 0
jne 0x4031ca
push VariantClear
push 0
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x40317e
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c8620
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0
jne 0x4031ca
call fcn.004085c7
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4031c6
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x30], eax
mov eax, 0x59aea8
test eax, eax
je 0x4031ec
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004c8077
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 0x4031fd
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
mov eax, 0x59aea8
test eax, eax
je 0x40321d
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x5f1ef0]
test ebx, ebx
je 0x403231
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [0x5f1ef0], eax
mov eax, 0x59aea8
test eax, eax
je 0x403253
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x5f1ef4]
test ebx, ebx
je 0x403267
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [0x5f1ef4], eax
mov eax, 0x59aea8
test eax, eax
je 0x403289
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x5f1ef8]
test ebx, ebx
je 0x40329d
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [0x5f1ef8], eax
mov eax, 0x59ae18
push eax
mov ebx, dword [0x5f1efc]
test ebx, ebx
je 0x4032bc
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [0x5f1efc], eax
mov dword [0x5f1f00], 0
mov dword [0x5f1f04], 0
mov dword [0x5f1f08], 0
mov eax, dword [0x5f1ee4]
and eax, 0xff
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fadd qword [0x59aec8]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov byte [0x5f1ee4], al
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x40333a
push eax
mov ebx, eax
call fcn.004022a8
inc eax
push eax
call fcn.004c8077
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 0x40334b
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x40336b
push eax
mov ebx, eax
call fcn.004022a8
inc eax
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x5f1f0c]
test ebx, ebx
je 0x40337f
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [0x5f1f0c], eax
mov eax, 0x59aed0
push eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x40339b
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
call fcn.004085c7
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4033c1
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x48], eax
call fcn.0040eda7
mov dword [0x5f1f10], eax
call fcn.0040ee63
mov dword [ebp - 0xf4], eax
push VariantClear
push 0
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4033fc
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x403428
push ebx
call fcn.004c8071
add esp, 4
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
push 1
mov eax, 0x59aed2
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xf8]
push eax
call fcn.0040f028
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x403473
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x403486
push ebx
call fcn.004c8071
add esp, 4
push 1
mov eax, 0x59aed2
mov dword [ebp - 0x108], eax
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x104]
push eax
call fcn.0040f24e
mov dword [ebp - 0x10c], eax
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x4034bf
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x4034d2
push ebx
call fcn.004c8071
add esp, 4
lea eax, [ebp - 0x10c]
push eax
call fcn.00407fe2
mov dword [ebp - 0x110], eax
mov ebx, dword [ebp - 0x10c]
test ebx, ebx
je 0x4034f7
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x110]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x40350e
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
call fcn.004104c2
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
call fcn.004107b0
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x100], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x40356f
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x104], eax
push 0x80000301
push 0
push dword [ebp - 0x44]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x108], eax
push 0x80000301
push 0
push dword [ebp - 0x48]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x10c], eax
push 0x80000301
push 0
push dword [ebp - 0x30]
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x114], 0
push 0
push dword [ebp - 0x114]
mov dword [ebp - 0x118], 0
push 0
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.0040f028
mov dword [ebp - 0x11c], eax
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x403638
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x118]
test ebx, ebx
je 0x40364b
push ebx
call fcn.004c8071
add esp, 4
lea eax, [ebp - 0x11c]
push eax
call fcn.00407fe2
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x403670
push ebx
call fcn.004c8071
add esp, 4
call fcn.0041080b
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x128], eax
push 0x80000301
push 0
push dword [0x5f1f10]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x12c], eax
push dword [ebp - 0x12c]
push dword [ebp - 0x3c]
push dword [ebp - 0x128]
push 0x59aee3
push dword [ebp - 0x4c]
push dword [ebp - 0x3c]
push dword [ebp - 0x120]
push dword [ebp - 0x3c]
push dword [ebp - 0x10c]
push dword [ebp - 0x3c]
push dword [ebp - 0x108]
push dword [ebp - 0x3c]
push dword [ebp - 0x104]
push dword [ebp - 0x3c]
push dword [ebp - 0x100]
push dword [ebp - 0x3c]
push dword [ebp - 0xf8]
push dword [ebp - 0x3c]
push dword [ebp - 0x38]
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push 0x59aee5
mov ecx, 0x16
call fcn.00402313
add esp, 0x58
mov dword [ebp - 0x130], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x40373e
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x403751
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x104]
test ebx, ebx
je 0x403764
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x403777
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x10c]
test ebx, ebx
je 0x40378a
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x40379d
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x4037b0
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x12c]
test ebx, ebx
je 0x4037c3
push ebx
call fcn.004c8071
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0x130]
test eax, eax
jne 0x4037d9
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x134], eax
mov ebx, dword [ebp - 0x130]
test ebx, ebx
je 0x403805
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x134]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40381c
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
cmp dword [ebp + 0x18], 1
jne 0x4038e9
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x40383d
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push 0x59aeec
mov ecx, 2
call fcn.00402313
add esp, 8
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x403887
push ebx
call fcn.004c8071
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0xf8]
test eax, eax
jne 0x40389d
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x4038c9
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4038e0
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
jmp 0x4039a3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x4038fc
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push 0x59aef5
mov ecx, 2
call fcn.00402313
add esp, 8
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x403946
push ebx
call fcn.004c8071
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0xf8]
test eax, eax
jne 0x40395c
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x403988
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x40399f
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0x2079d0e9
mov dword [ebp - 0x58], 0x2079d0e8
dec dword [0x5f1ed4]
fld qword [0x5f1ed8]
fadd qword [0x59aeb0]
fstp qword [0x5f1ed8]
fld dword [0x5f1ee0]
fadd qword [0x59aefa]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fstp dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov dword [0x5f1ee0], eax
call fcn.004108ce
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 1
jle 0x403a0f
jmp 0x403a26
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
call fcn.00410964
cmp dword [ebp - 0x20], 0
je 0x403a83
call fcn.00407e50
mov dword [ebp - 0x100], eax
fild dword [ebp - 0x100]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
fild dword [ebp - 0x20]
fstp qword [ebp - 0x108]
fsub qword [ebp - 0x108]
fstp qword [ebp - 0x110]
fld qword [ebp - 0x110]
fsub qword [0x59af02]
fcomp qword [0x59af0a]
fnstsw ax
test ah, 1
jne 0x403a83
xor eax, eax
jmp 0x403a88
mov eax, 1
test eax, eax
je 0x403bac
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x50]
test eax, eax
jne 0x403aa3
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf8], 0
push 0
push dword [ebp - 0xf8]
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
lea eax, [ebp - 0xf4]
push eax
call fcn.00410ab5
mov dword [ebp - 0x100], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x403b05
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x100]
push eax
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x403b1c
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x5c], eax
call fcn.00407e50
mov dword [ebp - 0x20], eax
dec dword [0x5f1ed4]
fld qword [0x5f1ed8]
fadd qword [0x59aeb0]
fstp qword [0x5f1ed8]
fld dword [0x5f1ee0]
fadd qword [0x59aefa]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fstp dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov dword [0x5f1ee0], eax
mov eax, dword [0x5f1ee4]
and eax, 0xff
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fadd qword [0x59aec8]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov byte [0x5f1ee4], al
jmp 0x403c3e
cmp dword [ebp - 0x60], 0xfffffb9e
je 0x403c13
inc dword [ebp - 0x64]
dec dword [ebp - 0x68]
fild dword [ebp - 0x6c]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov dword [ebp - 0x6c], eax
fild dword [ebp - 0x70]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fdiv qword [0x59aeb0]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov dword [ebp - 0x70], eax
jmp 0x403bac
call fcn.00414d41
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
call fcn.00410964
push 0
call fcn.004c809b
add esp, 4
call fcn.0041519b
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x403c51
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4c8640
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0
jne 0x403c9a
mov eax, 0x59af12
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x403c8f
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
jmp 0x4070b2
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x403cb4
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x403cc5
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x74], eax
dec dword [0x5f1ed4]
fld qword [0x5f1ed8]
fadd qword [0x59aeb0]
fstp qword [0x5f1ed8]
fld dword [0x5f1ee0]
fadd qword [0x59aefa]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fstp dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov dword [0x5f1ee0], eax
mov eax, dword [0x5f1ee4]
and eax, 0xff
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fadd qword [0x59aec8]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov byte [0x5f1ee4], al
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x403d5b
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4c8640
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0
jne 0x403da4
mov eax, 0x59af2d
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x403d99
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
jmp 0x4070b2
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x403dbe
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x78]
test ebx, ebx
je 0x403dcf
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x78], eax
cmp dword [ebp + 0x18], 1
jne 0x403eb5
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x403df0
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
push 0x80000301
push 0
push 2
push VariantClear
push 0
mov eax, dword [ebp - 0xf8]
test eax, eax
jne 0x403e2b
mov eax, 0x59ae18
push eax
push 2
mov ebx, 0x4c8ab0
call fcn.004c8083
add esp, 0x1c
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x403e57
push ebx
call fcn.004c8071
add esp, 4
mov eax, 0x59af39
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.004165d4
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x403e8e
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x403ea1
push ebx
call fcn.004c8071
add esp, 4
cmp dword [ebp - 0x104], 1
jne 0x403eb5
mov eax, 1
jmp 0x403eba
mov eax, 0
test eax, eax
je 0x404007
push 0x80000301
push 0
push 0x20
push 0x80000301
push 0
push 3
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x403eed
mov eax, 0x59aea8
push eax
push 3
mov ebx, 0x4c9e50
call fcn.004c8083
add esp, 0x28
mov dword [ebp - 0xf4], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x403f1c
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x403f48
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x403f5f
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x38], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x403f76
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4c8640
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xfc], eax
fild dword [ebp - 0xfc]
fstp qword [ebp - 0xfc]
fld qword [ebp - 0xfc]
fsub qword [0x59af3c]
fstp qword [ebp - 0x104]
fld qword [ebp - 0x104]
call fcn.004021d5
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x403fd3
mov eax, 0x59aea8
push eax
push 2
mov ebx, 0x4c9e10
call fcn.004c8083
add esp, 0x1c
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0x108]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x404003
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x74], eax
dec dword [0x5f1ed4]
fld qword [0x5f1ed8]
fadd qword [0x59aeb0]
fstp qword [0x5f1ed8]
fld dword [0x5f1ee0]
fadd qword [0x59aefa]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fstp dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov dword [0x5f1ee0], eax
mov eax, dword [0x5f1ee4]
and eax, 0xff
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fadd qword [0x59aec8]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov byte [0x5f1ee4], al
call fcn.004085c7
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4040a8
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
call fcn.004107b0
mov dword [ebp - 0xfc], eax
fild dword [ebp - 0xfc]
fstp qword [ebp - 0xfc]
fld qword [ebp - 0xfc]
fmul qword [0x59aeb8]
fstp qword [ebp - 0x104]
push 0x80000601
push dword [ebp - 0x100]
push dword [ebp - 0x104]
push 1
mov ebx, 0x4ca530
call fcn.004c8083
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
push 0x5f1f14
call fcn.004105be
mov dword [ebp - 0x114], eax
mov ebx, dword [ebp - 0x110]
test ebx, ebx
je 0x404146
push ebx
call fcn.004c8071
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x114]
test eax, eax
jne 0x40415c
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x118], eax
mov ebx, dword [ebp - 0x114]
test ebx, ebx
je 0x404188
push ebx
call fcn.004c8071
add esp, 4
push dword [ebp - 0x118]
push dword [ebp - 0x2c]
push dword [ebp - 0x108]
push dword [ebp - 0x40]
mov ecx, 4
call fcn.00402313
add esp, 0x10
mov dword [ebp - 0x11c], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x4041c0
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x118]
test ebx, ebx
je 0x4041d3
push ebx
call fcn.004c8071
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0x11c]
test eax, eax
jne 0x4041e9
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x120], eax
mov ebx, dword [ebp - 0x11c]
test ebx, ebx
je 0x404215
push ebx
call fcn.004c8071
add esp, 4
mov dword [ebp - 0x124], 0
push 0
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.0040f24e
mov dword [ebp - 0x128], eax
mov ebx, dword [ebp - 0x120]
test ebx, ebx
je 0x40424d
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x124]
test ebx, ebx
je 0x404260
push ebx
call fcn.004c8071
add esp, 4
push 0x80000301
push 0
push dword [ebp - 0x54]
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x12c], eax
push dword [ebp - 0x12c]
push dword [ebp - 0x128]
mov ecx, 2
call fcn.0040236f
add esp, 8
mov dword [ebp - 0x130], eax
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x4042b4
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x12c]
test ebx, ebx
je 0x4042c7
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x130]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x4042de
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
push 0x80000301
push 0
push 0x159ced57
push 1
mov ebx, 0x4c8fe0
call fcn.004c8083
add esp, 0x10
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xfc]
push eax
mov ebx, dword [ebp - 0x7c]
test ebx, ebx
je 0x404336
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
push 1
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.004105be
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
push 1
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0xf8]
push eax
call fcn.004166de
mov dword [ebp - 0x100], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x40439e
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x100]
push eax
mov ebx, dword [ebp - 0x80]
test ebx, ebx
je 0x4043b5
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x80], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x4043cc
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x4043ff
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x84], eax
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push VariantClear
push 0
push 0x59af44
push VariantClear
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x40443a
mov eax, 0x59ae18
push eax
push 4
mov ebx, 0x4c8da0
call fcn.004c8083
add esp, 0x34
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0xffffffff
je 0x4047fe
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
mov dword [ebp - 0xf8], 0
push 0
push dword [ebp - 0xf8]
mov eax, str._T
mov dword [ebp - 0xfc], eax
lea eax, [ebp - 0xfc]
push eax
mov eax, 0x59af44
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.004168bb
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x4044cd
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x4044e0
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x104]
push eax
mov ebx, dword [ebp - 0x88]
test ebx, ebx
je 0x4044fa
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x88], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x404514
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf8], 0
push 0
push dword [ebp - 0xf8]
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
mov eax, 0x59af44
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xf4]
push eax
call fcn.00416b7c
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x404588
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x40459b
push ebx
call fcn.004c8071
add esp, 4
mov eax, dword [ebp - 0x104]
push eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x4045b5
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x84], eax
push 0x80000301
push 0
push 0x7ed7414
push 1
mov ebx, 0x4ca530
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf4], eax
push dword [ebp - 0xf4]
push dword [0x5f1f18]
mov ecx, 2
call fcn.00402313
add esp, 8
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x404612
push ebx
call fcn.004c8071
add esp, 4
mov dword [ebp - 0xfc], 0
push 0
push dword [ebp - 0xfc]
call fcn.00412ac8
mov dword [ebp - 0x100], eax
mov dword [ebp - 0x104], 0
push 0
push dword [ebp - 0x104]
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xf8]
push eax
call fcn.0040d660
mov dword [ebp - 0x108], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x40466d
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x404680
push ebx
call fcn.004c8071
add esp, 4
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x108]
push eax
call fcn.00416cab
mov dword [ebp - 0x10c], eax
mov ebx, dword [ebp - 0x108]
test ebx, ebx
je 0x4046ac
push ebx
call fcn.004c8071
add esp, 4
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push dword [ebp - 0x10c]
push 1
mov ebx, 0x4c9360
call fcn.004c8083
add esp, 0x10
xor ecx, ecx
inc ecx
push ecx
push eax
cmp ecx, eax
jg 0x40475f
mov dword [0x5f1f1c], 1
push 1
call fcn.00412780
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
call fcn.00410964
call fcn.004151de
push 1
push 2
push 0x407f4000
push 0
call fcn.004127c0
xor ebp, ebp
xor esp, esp
mov eax, str.123456...
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0x8c]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x404758
push ebx
call fcn.004c8071
add esp, 4
pop eax
pop ecx
jmp 0x4046cd
add esp, 8
push 0
push 0
push 0
push VariantClear
push 0
push 0x59aed0
push VariantClear
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x40478a
mov eax, 0x59ae18
push eax
push 3
mov ebx, 0x4c9890
call fcn.004c8083
add esp, 0x28
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x90]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4047cb
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4047c7
imul eax, dword [ebx]
jmp 0x4047bc
mov ecx, eax
test ecx, ecx
je 0x4047ea
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x4047e3
push ebx
push eax
call fcn.004c8071
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4047d1
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x90], eax
jmp 0x404933
push 0
push 0
push 0
push VariantClear
push 0
push 0x59aed0
push VariantClear
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x404826
mov eax, 0x59ae18
push eax
push 3
mov ebx, 0x4c9890
call fcn.004c8083
add esp, 0x28
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
push eax
mov ebx, dword [ebp - 0x90]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x404867
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x404863
imul eax, dword [ebx]
jmp 0x404858
mov ecx, eax
test ecx, ecx
je 0x404886
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40487f
push ebx
push eax
call fcn.004c8071
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40486d
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x90], eax
mov ebx, dword [ebp - 0x90]
call fcn.004023c6
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0x10
jne 0x404933
mov dword [0x5f1f1c], 1
push 1
call fcn.00412780
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
call fcn.00410964
call fcn.004151de
push 1
push 2
push 0x407f4000
push 0
call fcn.004127c0
xor ebp, ebp
xor esp, esp
mov eax, str.123456...
mov dword [ebp - 0xf4], eax
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0x8c]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x404933
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x90]
call fcn.004023c6
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0x10
jl 0x406f78
mov dword [ebp - 0xf4], 0
push 0
lea eax, [ebp - 0xf4]
push eax
call fcn.00417193
mov dword [ebp - 0xf8], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x404982
push ebx
call fcn.004c8071
add esp, 4
lea eax, [ebp - 0xf8]
push eax
call fcn.004082f9
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x4049a7
push ebx
call fcn.004c8071
add esp, 4
lea eax, [ebp - 0x5c]
push eax
call fcn.004082f9
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xfc]
push eax
call fcn.004165d4
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x4049e2
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x4049f5
push ebx
call fcn.004c8071
add esp, 4
cmp dword [ebp - 0x104], 0
je 0x404a90
cmp dword [ebp - 0x60], 0xfffffb9e
je 0x404a69
inc dword [ebp - 0x64]
dec dword [ebp - 0x68]
fild dword [ebp - 0x6c]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov dword [ebp - 0x6c], eax
fild dword [ebp - 0x70]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fdiv qword [0x59aeb0]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov dword [ebp - 0x70], eax
jmp 0x404a02
call fcn.004151de
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
call fcn.00410964
mov eax, dword [ebp - 0x94]
jmp 0x4078f1
push 1
lea eax, [ebp - 0x5c]
push eax
call fcn.00417193
mov ebx, eax
test ebx, ebx
je 0x404aaa
push ebx
call fcn.004c8071
add esp, 4
dec dword [0x5f1ed4]
fld qword [0x5f1ed8]
fadd qword [0x59aeb0]
fstp qword [0x5f1ed8]
fld dword [0x5f1ee0]
fadd qword [0x59aefa]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fstp dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov dword [0x5f1ee0], eax
mov eax, dword [0x5f1ee4]
and eax, 0xff
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fadd qword [0x59aec8]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov byte [0x5f1ee4], al
call fcn.004085c7
mov dword [ebp - 0xf4], eax
mov ebx, dword [ebp - 0x90]
call fcn.004023df
mov eax, 8
cmp eax, ecx
jl 0x404b55
push 1
call fcn.004c808f
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0xf8], ebx
push dword [ebp - 0xf8]
lea eax, [ebp - 0xf4]
push eax
call fcn.004165d4
mov dword [ebp - 0xfc], eax
mov ebx, dword [ebp - 0xf4]
test ebx, ebx
je 0x404b8b
push ebx
call fcn.004c8071
add esp, 4
cmp dword [ebp - 0xfc], 0
jne 0x404c2b
cmp dword [ebp - 0x60], 0xfffffb9e
je 0x404bff
inc dword [ebp - 0x64]
dec dword [ebp - 0x68]
fild dword [ebp - 0x6c]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fmul qword [0x59aeb0]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov dword [ebp - 0x6c], eax
fild dword [ebp - 0x70]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fdiv qword [0x59aeb0]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov dword [ebp - 0x70], eax
jmp 0x404b98
call fcn.004151de
mov dword [ebp - 0xf4], 0
push 0
push dword [ebp - 0xf4]
call fcn.00410964
mov eax, dword [ebp - 0x94]
jmp 0x4078f1
dec dword [0x5f1ed4]
fld qword [0x5f1ed8]
fadd qword [0x59aeb0]
fstp qword [0x5f1ed8]
fld dword [0x5f1ee0]
fadd qword [0x59aefa]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fstp dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov dword [0x5f1ee0], eax
mov ebx, dword [ebp - 0x90]
call fcn.004023df
mov eax, 9
cmp eax, ecx
jl 0x404c8d
push 1
call fcn.004c808f
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0xf4], ebx
push dword [ebp - 0xf4]
call fcn.00407b64
mov dword [ebp - 0xf8], eax
call fcn.00417345
mov dword [ebp - 0xfc], eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push 0x10
push VariantClear
push 0
mov eax, dword [ebp - 0xfc]
test eax, eax
jne 0x404ce2
mov eax, 0x59ae18
push eax
push 3
mov ebx, 0x4c8b40
call fcn.004c8083
add esp, 0x28
mov dword [ebp - 0x100], eax
mov ebx, dword [ebp - 0xfc]
test ebx, ebx
je 0x404d0e
push ebx
call fcn.004c8071
add esp, 4
lea eax, [ebp - 0x100]
push eax
call fcn.0040d565
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x404d33
push ebx
call fcn.004c8071
add esp, 4
fild dword [ebp - 0x104]
fstp qword [ebp - 0x10c]
fld qword [ebp - 0x10c]
fild dword [ebp - 0x54]
fstp qword [ebp - 0x114]
fmul qword [ebp - 0x114]
fstp qword [ebp - 0x11c]
push 0x80000601
push dword [ebp - 0x118]
push dword [ebp - 0x11c]
push 1
mov ebx, 0x4c8fe0
call fcn.004c8083
add esp, 0x10
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x4c9a20
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x12c], 0
push 0
push dword [ebp - 0x12c]
push 1
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0xf8]
push eax
call fcn.004105be
mov dword [ebp - 0x130], eax
mov ebx, dword [ebp - 0xf8]
test ebx, ebx
je 0x404ddc
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x128]
test ebx, ebx
je 0x404def
mov ebx, dword [ebp - 0x90]
call fcn.004023c6
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 2
jne 0x40701c
push 0x80000301
push 0
push 1
push VariantClear
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x406fb8
mov eax, 0x59ae18
push eax
push 2
mov ebx, 0x4c8ab0
call fcn.004c8083
add esp, 0x1c
mov dword [ebp - 0x100], eax
push 0x59aff2
push dword [ebp - 0x100]
call fcn.004023ff
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x104], eax
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x407008
push ebx
call fcn.004c8071
add esp, 4
cmp dword [ebp - 0x104], 0
je 0x40701c
mov eax, 1
jmp 0x407021
mov eax, 0
test eax, eax
je 0x407094
mov ebx, dword [ebp - 0x90]
call fcn.004023df
mov eax, 1
cmp eax, ecx
jl 0x40704a
push 1
call fcn.004c808f
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0xf4], ebx
mov ebx, dword [ebp - 0xf4]
mov eax, dword [ebx]
test eax, eax
je 0x407076
push eax
mov ebx, eax
call fcn.004022a8
inc eax
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407089
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
jmp 0x4070b2
mov eax, 0x59aff4
push eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4070ac
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov ebx, dword [ebp + 0x10]
mov dword [ebx], eax
push 0x5f1f44
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x1c]
test eax, eax
je 0x4070dd
push 0x5f1f44
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
jmp 0x4070dd
dec dword [0x5f1ed4]
fld qword [0x5f1ed8]
fadd qword [0x59aeb0]
fstp qword [0x5f1ed8]
fld dword [0x5f1ee0]
fadd qword [0x59aefa]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fstp dword [ebp - 0xfc]
mov eax, dword [ebp - 0xfc]
mov dword [0x5f1ee0], eax
mov eax, dword [0x5f1ee4]
and eax, 0xff
mov dword [ebp - 0xf8], eax
fild dword [ebp - 0xf8]
fstp qword [ebp - 0xf8]
fld qword [ebp - 0xf8]
fadd qword [0x59aec8]
fstp qword [ebp - 0x100]
fld qword [ebp - 0x100]
call fcn.004021d5
mov byte [0x5f1ee4], al
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0x5f1ef8]
test eax, eax
jne 0x407171
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4c8640
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
cmp dword [ebp - 0xf8], 0
jne 0x407200
mov eax, 0x59aea8
test eax, eax
je 0x4071b3
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004c8077
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x5f1f2c]
test ebx, ebx
je 0x4071c7
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [0x5f1f2c], eax
mov eax, 0x59ae18
push eax
mov ebx, dword [0x5f1efc]
test ebx, ebx
je 0x4071e6
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [0x5f1efc], eax
mov dword [0x5f1f04], 0
mov dword [0x5f1f08], 0
mov ebx, dword [ebp - 0x90]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x407221
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40721d
imul eax, dword [ebx]
jmp 0x407212
mov ecx, eax
test ecx, ecx
je 0x407240
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x407239
push ebx
push eax
call fcn.004c8071
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x407227
call fcn.004c8071
add esp, 4
mov eax, 0x59aea8
mov dword [ebp - 0x90], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x74]
test eax, eax
jne 0x407266
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4c8640
call fcn.004c8083
add esp, 0x10
push eax
call fcn.004193fd
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x74]
test ebx, ebx
je 0x40729c
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x74], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x4072b3
mov eax, 0x59ae18
push eax
push 1
mov ebx, 0x4c8620
call fcn.004c8083
add esp, 0x10
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x4c9ad0
call fcn.004c8083
add esp, 0x10
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4072fd
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x407314
mov eax, 0x59aea8
push eax
push 1
mov ebx, 0x4c8640
call fcn.004c8083
add esp, 0x10
push eax
call fcn.004193fd
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xf8]
push eax
mov ebx, dword [ebp - 0x80]
test ebx, ebx
je 0x40734a
push ebx
call fcn.004c8071
add esp, 4
pop eax
mov dword [ebp - 0x80], eax
push VariantClear
push 0
mov eax, dword [ebp - 0xdc]
test eax, eax
jne 0x407364
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x407902
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x28]
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40791e
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40792e
push ebx
call fcn.004c8071
add esp, 4
mov ebx, dword [ebp - 0x38]
test ebx, ebx
je 0x40793e