Function at 0x40e714
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x98
mov dword [ebp - 4], 0
push 0x18
call fcn.00414768
add esp, 4
mov dword [ebp - 8], eax
mov edi, eax
mov esi, 0xdda762
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, edi
mov ecx, 4
push ecx
push ebx
push 0x28
call fcn.00414768
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
push ebx
push 0x10
call fcn.00414768
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0xdda642
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40e746
push 0x10
call fcn.00414768
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0xdda642
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
push 0xc
call fcn.00414768
add esp, 4
mov dword [ebp - 0x38], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
add ebx, 4
push ebx
push 0x1c
call fcn.00414768
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
pop ebx
add ebx, 4
push ebx
push 0x7c
call fcn.00414768
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1f
rep stosd dword es:[edi], eax
add ebx, 0x78
push ebx
push 0x48
call fcn.00414768
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0xdda76a
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 0x10
push ecx
push ebx
push 8
call fcn.00414768
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40e885
pop ebx
pop ebx
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 - 4], 4
mov dword [ebp - 0x68], 1
mov eax, dword [ebp - 4]
cmp eax, 0
jge 0x40e91a
push 0xa
call fcn.00414774
add esp, 4
mov dword [ebp - 0x64], eax
lea ebx, [ebp - 0x68]
call fcn.004024b7
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.00414768
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x64]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
pop edx
test ecx, ecx
je 0x40e97f
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00414762
add esp, 4
pop ebx
call fcn.00414762
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40e95b
pop edx
pop edi
test edx, edx
je 0x40e9d1
mov ebx, edi
push edx
push ebx
push 0x28
call fcn.00414768
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
push ebx
push 0x10
call fcn.00414768
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0xdda642
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x40e989
push dword [ebp - 8]
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 8], eax
lea eax, [ebp - 0xc]
push eax
mov eax, str..text
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409982
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x40ea05
push ebx
call fcn.00414762
add esp, 4
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40ea23
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0xc]
push eax
push eax
mov ebx, eax
call fcn.004024b7
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.00414768
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x64]
mov ebx, dword [ebx]
push ebx
call fcn.00414762
add esp, 4
pop eax
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40ea7d
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x1000
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7ac]
test eax, eax
jne 0x40eaa8
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40eadc
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fdiv qword [0xdda650]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
mov dword [ebp - 0x14], eax
push 0x80000601
push 0x40800000
push 0
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 2
mov ebx, 0x414ae0
call fcn.0041476e
add esp, 0x1c
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
fcomp qword [0xdda658]
fnstsw ax
test ah, 0x41
mov eax, 0
sete al
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push eax
push 1
mov ebx, 0x4153a0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x14], 0
jne 0x40eb94
cmp dword [ebp - 0x18], 0
jne 0x40eb94
mov eax, 1
jmp 0x40eb99
mov eax, 0
test eax, eax
je 0x40eba8
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40ebc6
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x64], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x74]
fadd qword [ebp - 0x74]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x7c]
fmul qword [0xdda650]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40ec2b
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x400
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40ec5f
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x24
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x60000020
lea eax, [ebp - 0xc]
push eax
mov eax, 0xdda660
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409982
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x40ec9a
push ebx
call fcn.00414762
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7ac]
test eax, eax
jne 0x40ecaf
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fdiv qword [0xdda667]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
mov dword [ebp - 0x14], eax
push 0x80000601
push 0x40b00000
push 0
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 2
mov ebx, 0x414ae0
call fcn.0041476e
add esp, 0x1c
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
fcomp qword [0xdda658]
fnstsw ax
test ah, 0x41
mov eax, 0
sete al
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push eax
push 1
mov ebx, 0x4153a0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x14], 0
jne 0x40ed68
cmp dword [ebp - 0x18], 0
jne 0x40ed68
mov eax, 1
jmp 0x40ed6d
mov eax, 0
test eax, eax
je 0x40ed7c
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40ed9a
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x74]
fadd qword [ebp - 0x74]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x7c]
fmul qword [0xdda667]
fstp qword [ebp - 0x84]
mov ebx, dword [ebp - 0x64]
fild dword [ebx]
fstp qword [ebp - 0x8c]
fld qword [ebp - 0x8c]
fadd qword [ebp - 0x84]
fstp qword [ebp - 0x94]
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x20]
push eax
fld qword [ebp - 0x94]
call fcn.00401c9c
push eax
call fcn.00409b55
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
push eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x40ee24
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40ee46
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40ee71
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x68], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x78]
fadd qword [ebp - 0x78]
fstp qword [ebp - 0x80]
fld qword [ebp - 0x80]
fmul qword [0xdda667]
fstp qword [ebp - 0x88]
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fadd qword [ebp - 0x88]
fstp qword [ebp - 0x98]
fld qword [ebp - 0x98]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40eef3
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0xc]
push eax
push eax
mov ebx, eax
call fcn.004024b7
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.00414768
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x64]
mov ebx, dword [ebx]
push ebx
call fcn.00414762
add esp, 4
pop eax
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x40ef42
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40ef76
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fdiv qword [0xdda650]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
mov dword [ebp - 0x14], eax
push 0x80000601
push 0x40800000
push 0
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 2
mov ebx, 0x414ae0
call fcn.0041476e
add esp, 0x1c
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
fcomp qword [0xdda658]
fnstsw ax
test ah, 0x41
mov eax, 0
sete al
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push eax
push 1
mov ebx, 0x4153a0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x14], 0
jne 0x40f02e
cmp dword [ebp - 0x18], 0
jne 0x40f02e
mov eax, 1
jmp 0x40f033
mov eax, 0
test eax, eax
je 0x40f042
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40f060
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x64], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x74]
fadd qword [ebp - 0x74]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x7c]
fmul qword [0xdda650]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40f0c5
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40f0f0
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40f11b
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x6c], ebx
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x74]
mov ebx, dword [ebp - 0x6c]
fild dword [ebx]
fstp qword [ebp - 0x7c]
fadd qword [ebp - 0x7c]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40f178
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x24
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x40000040
lea eax, [ebp - 0xc]
push eax
mov eax, 0xdda66f
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409982
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x40f1b3
push ebx
call fcn.00414762
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x40f1c6
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fdiv qword [0xdda667]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
mov dword [ebp - 0x14], eax
push 0x80000601
push 0x40b00000
push 0
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 2
mov ebx, 0x414ae0
call fcn.0041476e
add esp, 0x1c
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
fcomp qword [0xdda658]
fnstsw ax
test ah, 0x41
mov eax, 0
sete al
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push eax
push 1
mov ebx, 0x4153a0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x14], 0
jne 0x40f27f
cmp dword [ebp - 0x18], 0
jne 0x40f27f
mov eax, 1
jmp 0x40f284
mov eax, 0
test eax, eax
je 0x40f293
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40f2b1
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0xc]
push eax
push eax
mov ebx, eax
call fcn.004024b7
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.00414768
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x64]
mov ebx, dword [ebx]
push ebx
call fcn.00414762
add esp, 4
pop eax
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40f30b
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40f336
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x68], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x78]
fadd qword [ebp - 0x78]
fstp qword [ebp - 0x80]
fld qword [ebp - 0x80]
fmul qword [0xdda667]
fstp qword [ebp - 0x88]
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fadd qword [ebp - 0x88]
fstp qword [ebp - 0x98]
fld qword [ebp - 0x98]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7b0]
test eax, eax
jne 0x40f3af
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40f3e3
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fdiv qword [0xdda650]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
mov dword [ebp - 0x14], eax
push 0x80000601
push 0x40800000
push 0
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 2
mov ebx, 0x414ae0
call fcn.0041476e
add esp, 0x1c
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
fcomp qword [0xdda658]
fnstsw ax
test ah, 0x41
mov eax, 0
sete al
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push eax
push 1
mov ebx, 0x4153a0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x14], 0
jne 0x40f49b
cmp dword [ebp - 0x18], 0
jne 0x40f49b
mov eax, 1
jmp 0x40f4a0
mov eax, 0
test eax, eax
je 0x40f4af
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40f4cd
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x64], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x74]
fadd qword [ebp - 0x74]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x7c]
fmul qword [0xdda650]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40f532
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40f55d
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x40f588
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x6c], ebx
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x74]
mov ebx, dword [ebp - 0x6c]
fild dword [ebx]
fstp qword [ebp - 0x7c]
fadd qword [ebp - 0x7c]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40f5e5
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x24
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0xc0000040
lea eax, [ebp - 0xc]
push eax
mov eax, str..rsrc
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
call fcn.00409982
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x40f620
push ebx
call fcn.00414762
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7b0]
test eax, eax
jne 0x40f635
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fdiv qword [0xdda667]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
mov dword [ebp - 0x14], eax
push 0x80000601
push 0x40b00000
push 0
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 2
mov ebx, 0x414ae0
call fcn.0041476e
add esp, 0x1c
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
fcomp qword [0xdda658]
fnstsw ax
test ah, 0x41
mov eax, 0
sete al
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push eax
push 1
mov ebx, 0x4153a0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x14], 0
jne 0x40f6ee
cmp dword [ebp - 0x18], 0
jne 0x40f6ee
mov eax, 1
jmp 0x40f6f3
mov eax, 0
test eax, eax
je 0x40f702
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40f720
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0xc]
push eax
push eax
mov ebx, eax
call fcn.004024b7
pop eax
sub ebx, eax
add ecx, ebx
push ecx
call fcn.00414768
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x64]
mov ebx, dword [ebx]
push ebx
call fcn.00414762
add esp, 4
pop eax
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40f77a
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40f7a5
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x68], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x78]
fadd qword [ebp - 0x78]
fstp qword [ebp - 0x80]
fld qword [ebp - 0x80]
fmul qword [0xdda667]
fstp qword [ebp - 0x88]
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x90]
fld qword [ebp - 0x90]
fadd qword [ebp - 0x88]
fstp qword [ebp - 0x98]
fld qword [ebp - 0x98]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov eax, 0x56b052
xor ecx, ecx
test eax, eax
je 0x40f817
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [0xe5b7b4]
xor ebx, ebx
test eax, eax
je 0x40f82a
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40f841
dec eax
test ecx, ecx
je 0x40f841
call fcn.0040455b
add esp, 0xc
test eax, eax
je 0x40f882
mov eax, dword [0xe5b7b4]
test eax, eax
je 0x40f868
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00414768
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40f879
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
jmp 0x40f8d2
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40f8a0
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
push dword [ebx]
call fcn.0040b6f3
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40f8ce
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40f8e5
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 1
jl 0x40fba6
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40f923
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fdiv qword [0xdda650]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
mov dword [ebp - 0x14], eax
push 0x80000601
push 0x40800000
push 0
fild dword [ebp - 0x10]
fstp qword [ebp - 0x68]
push 0x80000601
push dword [ebp - 0x64]
push dword [ebp - 0x68]
push 2
mov ebx, 0x414ae0
call fcn.0041476e
add esp, 0x1c
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
fcomp qword [0xdda658]
fnstsw ax
test ah, 0x41
mov eax, 0
sete al
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push eax
push 1
mov ebx, 0x4153a0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x14], 0
jne 0x40f9db
cmp dword [ebp - 0x18], 0
jne 0x40f9db
mov eax, 1
jmp 0x40f9e0
mov eax, 0
test eax, eax
je 0x40f9ef
mov dword [ebp - 0x14], 1
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40fa0d
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x64], ebx
fild dword [ebp - 0x14]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fild dword [ebp - 0x18]
fstp qword [ebp - 0x74]
fadd qword [ebp - 0x74]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x7c]
fmul qword [0xdda650]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40fa72
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40fa9d
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x40fac8
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x6c], ebx
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x74]
mov ebx, dword [ebp - 0x6c]
fild dword [ebx]
fstp qword [ebp - 0x7c]
fadd qword [ebp - 0x7c]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40fb25
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x24
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x40000040
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40fb59
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov eax, dword [ebx]
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x40fb8c
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov eax, dword [ebx]
mov dword [ebp - 0x30], eax
jmp 0x40fbb7
dec dword [ebp - 4]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
fild dword [ebp - 4]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fmul qword [0xdda682]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x415dd0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40fc02
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
fild dword [ebp - 4]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fmul qword [0xdda682]
fstp qword [ebp - 0x70]
mov dword [ebp - 0x74], esp
fld qword [ebp - 0x70]
call fcn.00401c9c
push eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
push ebx
mov dword [ebp - 0x78], ecx
test ecx, ecx
jne 0x40fc38
xor eax, eax
jmp 0x40fc44
imul ecx, ecx, 0x28
push ecx
call fcn.00414768
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x78]
test ecx, ecx
je 0x40fced
push ecx
push edi
push ebx
mov ebx, dword [ebx]
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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 dword [edi], eax
add edi, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x40fced
add ebx, 4
add edi, 0x28
jmp 0x40fc5f
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x40fcf7
add eax, 8
push eax
mov eax, 0x27
call fcn.00414780
cmp dword [ebp - 0x74], esp
je 0x40fd14
push 6
call fcn.00414774
add esp, 4
push eax
mov ebx, dword [ebp - 0x7c]
push ebx
mov edi, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x78]
test ecx, ecx
je 0x40fdea
push ecx
push edi
push ebx
mov edi, dword [edi]
push ebx
push edi
push 1
mov eax, 2
call fcn.0041475c
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40fd61
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40fd5f
imul eax, dword [edi]
jmp 0x40fd54
mov ecx, eax
cmp ecx, 8
jle 0x40fd6b
mov ecx, 8
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 8
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
pop edi
pop ecx
dec ecx
je 0x40fdea
add ebx, 0x28
add edi, 4
jmp 0x40fd2d
call fcn.00414762
add esp, 4
pop eax
mov ebx, dword [ebp - 0x38]
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x4550
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 4]
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0x14c
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 4]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x64]
mov word [ebx], ax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 4]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 4]
add ebx, 0xc
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 4]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 4]
add ebx, 0x14
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0xe0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 4]
add ebx, 0x18
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0x10f
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0x10b
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [0xe5b7a0]
mov ebx, dword [ebp - 0x64]
mov byte [ebx], al
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov eax, dword [0xe5b7a4]
mov ebx, dword [ebp - 0x64]
mov byte [ebx], al
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0xc
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x40fef6
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 0x68]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov dword [ebp - 0x3c], 0
fild dword [ebp - 4]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fsub qword [0xdda5d6]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
xor ecx, ecx
push eax
lea eax, [ebp - 0x40]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40ffd5
mov ebx, dword [ebp - 8]
call fcn.004024b7
push ebx
push ecx
fild dword [ebp - 0x40]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fadd qword [0xdda5d6]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
call fcn.00401c9c
dec eax
jns 0x40ff79
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40ff8c
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x74], ebx
fild dword [ebp - 0x3c]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x7c]
mov ebx, dword [ebp - 0x74]
fild dword [ebx]
fstp qword [ebp - 0x84]
fadd qword [ebp - 0x84]
fstp qword [ebp - 0x8c]
fld qword [ebp - 0x8c]
call fcn.00401c9c
mov dword [ebp - 0x3c], eax
pop eax
pop ebx
pop ecx
jmp 0x40ff37
add esp, 0xc
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x14
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x18
mov dword [ebp - 0x64], ebx
fild dword [ebp + 8]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fadd qword [0xdda667]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x74]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x1c
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x1000
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x20
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x41006b
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 0x68]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x24
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x400000
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x28
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x1000
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x2c
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x200
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x30
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 4
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x34
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x38
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x3c
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x40
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 4
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x44
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x48
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x4c
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 4]
dec eax
jns 0x410177
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x41018a
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 4]
dec eax
jns 0x4101b4
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4101c7
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x6c], ebx
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x74]
mov ebx, dword [ebp - 0x6c]
fild dword [ebx]
fstp qword [ebp - 0x7c]
fadd qword [ebp - 0x7c]
fstp qword [ebp - 0x84]
fld qword [ebp - 0x84]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x50
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x400
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x54
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x58
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 2
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x5c
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov word [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x60
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x100000
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x64
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x1000
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x68
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x100000
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x6c
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x1000
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x70
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
add ebx, 0x74
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0x10
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x4102fa
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x410331
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov dword [ebx], 0
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x41036b
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x410393
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
fild dword [ebp - 0x20]
fstp qword [ebp - 0x78]
fadd qword [ebp - 0x78]
fstp qword [ebp - 0x80]
fld qword [ebp - 0x80]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x4103ee
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x410427
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x41045d
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov eax, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 0xc
cmp eax, ecx
jl 0x410496
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x4104be
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 0x68]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x38]
mov ebx, dword [ebx + 8]
mov ebx, dword [ebx + 0x78]
call fcn.004024b7
mov eax, 0xc
cmp eax, ecx
jl 0x4104f9
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
fild dword [ebp - 0x20]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fdiv qword [0xdda5de]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x74]
call fcn.00401c9c
mov ebx, dword [ebp - 0x64]
mov dword [ebx], eax
push 0x80000301
push 0
push 0xf8
push 1
mov ebx, 0x415dd0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
push eax
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x41055a
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x64], esp
push 0xf8
mov eax, dword [ebp - 0x38]
push eax
push 0xf8
call fcn.00414768
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
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 dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov word [edi], ax
add edi, 2
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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 dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
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 dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ecx, 0x10
mov ebx, dword [ebx]
add ebx, 8
push ebx
push ecx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ecx
pop ebx
add ebx, 4
dec ecx
jne 0x41071e
pop ebx
add ebx, 4
pop ebx
add ebx, 4
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x410754
add eax, 8
push eax
mov eax, 0x28
call fcn.00414780
cmp dword [ebp - 0x64], esp
je 0x410771
push 6
call fcn.00414774
add esp, 4
push eax
mov ebx, dword [ebp - 0x68]
push ebx
mov edi, dword [ebp - 0x6c]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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
pop ebx
add ebx, 0x14
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov ax, word [ebx]
add ebx, 2
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
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 eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
mov ecx, 0x10
add edi, 8
push ebx
push edi
push ecx
mov edi, dword [edi]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ecx
pop edi
pop ebx
add edi, 4
add ebx, 8
dec ecx
jne 0x41091f
pop edi
add edi, 4
pop ebx
add ebx, 0xe0
pop edi
add edi, 4
call fcn.00414762
add esp, 4
pop eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 4]
dec eax
jns 0x410980
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410993
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 8]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 4]
dec eax
jns 0x4109bd
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4109d0
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 0x64]
fild dword [ebx]
fstp qword [ebp - 0x70]
fld qword [ebp - 0x70]
mov ebx, dword [ebp - 0x68]
fild dword [ebx]
fstp qword [ebp - 0x78]
fadd qword [ebp - 0x78]
fstp qword [ebp - 0x80]
fld qword [ebp - 0x80]
call fcn.00401c9c
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x415dd0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x410a3b
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x48], eax
push 0x4b1b23
push dword [0xe5b7b8]
call fcn.0040135b
add esp, 8
cmp eax, 0
je 0x410bef
push getpeername
push 0
mov eax, dword [0xe5b7b8]
test eax, eax
jne 0x410a70
mov eax, 0x4b1b23
push eax
push 1
mov ebx, 0x415870
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x64], eax
push getpeername
push 0
mov eax, dword [0xe5b7b8]
test eax, eax
jne 0x410a9b
mov eax, 0x4b1b23
push eax
push 1
mov ebx, 0x415870
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x68], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x68]
test eax, eax
jne 0x410ac4
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x410aea
push ebx
call fcn.00414762
add esp, 4
fld qword [0xdda68a]
fild dword [ebp - 0x6c]
fstp qword [ebp - 0x74]
fsub qword [ebp - 0x74]
fstp qword [ebp - 0x7c]
fld qword [ebp - 0x7c]
call fcn.00401c9c
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x415dd0
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x80], eax
push dword [ebp - 0x80]
push dword [ebp - 0x64]
mov ecx, 2
call fcn.00404620
add esp, 8
mov dword [ebp - 0x84], eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x410b56
push ebx
call fcn.00414762
add esp, 4
mov ebx, dword [ebp - 0x80]
test ebx, ebx
je 0x410b69
push ebx
call fcn.00414762
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x410b7f
mov eax, 0x56b052
push eax
push 0x80000301
push 0
push 0x30
push 0x80000301
push 0
push 0x81
push reloc.WS2_32.dll_getpeername
push 0
push 0xdda692
push 4
mov ebx, 0x415d00
call fcn.0041476e
add esp, 0x34
mov dword [ebp - 0x88], eax
mov ebx, dword [ebp - 0x84]
test ebx, ebx
je 0x410bcf
push ebx
call fcn.00414762
add esp, 4
mov eax, dword [ebp - 0x88]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x410be6
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
jmp 0x410c20
mov eax, 0xdda692
test eax, eax
je 0x410c0b
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00414768
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x410c1c
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x4c], eax
push dword [ebp - 0x34]
push dword [ebp - 0x44]
push dword [ebp - 0x4c]
mov ecx, 3
call fcn.00404620
add esp, 0xc
mov dword [ebp - 0x64], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x410c4c
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x68], eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x410c72
push ebx
call fcn.00414762
add esp, 4
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x50], eax
push dword [ebp - 0x34]
push dword [ebp - 0x44]
push dword [ebp - 0x4c]
mov ecx, 3
call fcn.00404620
add esp, 0xc
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], esp
push dword [ebp - 0x50]
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x410ca1
add eax, 8
push eax
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x410cac
add eax, 8
push eax
mov eax, 0x29
call fcn.00414780
cmp dword [ebp - 0x68], esp
je 0x410cc9
push 6
call fcn.00414774
add esp, 4
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x410cd9
push ebx
call fcn.00414762
add esp, 4
mov ebx, dword [0xe5b7e4]
call fcn.00404607
xor ecx, ecx
push eax
lea eax, [ebp - 0x40]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x41111c
mov ebx, dword [0xe5b7e4]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 0x40]
dec eax
jns 0x410d1b
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410d2e
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
fild dword [ebx]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fadd qword [0xdda5d6]
fstp qword [ebp - 0x74]
fld qword [ebp - 0x74]
call fcn.00401c9c
mov dword [ebp - 0x54], eax
push 0x80000301
push 0
push 4
push 0x80000301
push 0
push dword [ebp - 0x54]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7ac]
test eax, eax
jne 0x410d85
mov eax, 0x56b052
push eax
push 3
mov ebx, 0x415b70
call fcn.0041476e
add esp, 0x28
mov dword [ebp - 0x64], 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 - 0x64]
test eax, eax
jne 0x410dc0
mov eax, 0x56b052
push eax
push 3
mov ebx, 0x415970
call fcn.0041476e
add esp, 0x28
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], ecx
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x410dec
push ebx
call fcn.00414762
add esp, 4
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x70]
cmp ecx, 0x80000101
jne 0x410e04
and eax, 0xff
jmp 0x410e4f
cmp ecx, 0x80000201
jne 0x410e0f
cwde
jmp 0x410e4f
cmp ecx, 0x80000301
je 0x410e4f
cmp ecx, 0x80000401
je 0x410e4f
mov dword [ebp - 0x78], eax
cmp ecx, 0x80000501
je 0x410e3f
cmp ecx, 0x80000601
je 0x410e44
push 2
call fcn.00414774
add esp, 4
fld dword [ebp - 0x78]
jmp 0x410e4a
mov dword [ebp - 0x74], edx
fld qword [ebp - 0x78]
call fcn.00401c9c
mov dword [ebp - 0x58], eax
mov ebx, dword [0xe5b7e4]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 0x40]
dec eax
jns 0x410e72
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410e85
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
cmp dword [ebx], 1
jne 0x410ed3
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x410eb9
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov eax, dword [ebx]
mov dword [ebp - 0x5c], eax
jmp 0x410fd0
mov ebx, dword [0xe5b7e4]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 0x40]
dec eax
jns 0x410ef3
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410f06
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 0x68]
cmp dword [ebx], 2
jne 0x410f54
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x410f3a
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov eax, dword [ebx]
mov dword [ebp - 0x5c], eax
jmp 0x410fd0
mov ebx, dword [0xe5b7e4]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 0x40]
dec eax
jns 0x410f74
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x410f87
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x68], ebx
mov ebx, dword [ebp - 0x68]
cmp dword [ebx], 3
jne 0x410fd0
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x410fbb
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov eax, dword [ebx]
mov dword [ebp - 0x5c], eax
mov ebx, dword [0xe5b7e4]
call fcn.004024b7
push ebx
push ecx
mov eax, dword [ebp - 0x40]
dec eax
jns 0x410ff0
push 4
call fcn.00414774
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x411003
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
mov eax, dword [ebx]
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0xffffffff
jne 0x41104d
fild dword [ebp - 0x58]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fild dword [ebp - 0x5c]
fstp qword [ebp - 0x70]
fadd qword [ebp - 0x70]
fadd qword [0xdda7dd]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
call fcn.00401c9c
mov dword [ebp - 0x58], eax
jmp 0x411073
fild dword [ebp - 0x5c]
fstp qword [ebp - 0x68]
fld qword [ebp - 0x68]
fild dword [ebp - 0x60]
fstp qword [ebp - 0x70]
fadd qword [ebp - 0x70]
fadd qword [0xdda7dd]
fstp qword [ebp - 0x78]
fld qword [ebp - 0x78]
call fcn.00401c9c
mov dword [ebp - 0x58], eax
push 0x80000301
push 0
push dword [ebp - 0x58]
push 1
mov ebx, 0x415870
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x64], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4110a5
mov eax, 0x56b052
push eax
push 0x80000301
push 0
push 4
push 0x80000301
push 0
push dword [ebp - 0x54]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7ac]
test eax, eax
jne 0x4110d1
add esp, 0xc
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 0
cmp eax, ecx
jl 0x41113d
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
fild dword [ebx]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fadd qword [0xdda5d6]
fstp qword [ebp - 0x74]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7ac]
test eax, eax
jne 0x411173
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x78], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7ac]
test eax, eax
jne 0x41119e
mov eax, 0x56b052
push eax
push 0x80000301
push 0
push dword [ebp - 0x78]
fld qword [ebp - 0x74]
call fcn.00401c9c
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4111cc
mov eax, 0x56b052
push eax
push 4
mov ebx, 0x415d00
call fcn.0041476e
add esp, 0x34
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x4111fc
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x48], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 1
cmp eax, ecx
jl 0x41121e
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
fild dword [ebx]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fadd qword [0xdda5d6]
fstp qword [ebp - 0x74]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x411252
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x78], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x41127b
mov eax, 0x56b052
push eax
push 0x80000301
push 0
push dword [ebp - 0x78]
fld qword [ebp - 0x74]
call fcn.00401c9c
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4112a9
mov eax, 0x56b052
push eax
push 4
mov ebx, 0x415d00
call fcn.0041476e
add esp, 0x34
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x4112d9
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x48], eax
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 2
cmp eax, ecx
jl 0x4112fb
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
fild dword [ebx]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fadd qword [0xdda5d6]
fstp qword [ebp - 0x74]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7b0]
test eax, eax
jne 0x411331
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x78], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [0xe5b7b0]
test eax, eax
jne 0x41135c
mov eax, 0x56b052
push eax
push 0x80000301
push 0
push dword [ebp - 0x78]
fld qword [ebp - 0x74]
call fcn.00401c9c
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x41138a
mov eax, 0x56b052
push eax
push 4
mov ebx, 0x415d00
call fcn.0041476e
add esp, 0x34
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x4113ba
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x30], 0
jle 0x4114a5
mov ebx, dword [ebp - 8]
call fcn.004024b7
mov eax, 3
cmp eax, ecx
jl 0x4113e6
push 1
call fcn.00414774
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x64], ebx
mov ebx, dword [ebp - 0x64]
fild dword [ebx]
fstp qword [ebp - 0x6c]
fld qword [ebp - 0x6c]
fadd qword [0xdda5d6]
fstp qword [ebp - 0x74]
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x41141a
mov eax, 0x56b052
push eax
push 1
mov ebx, 0x414c90
call fcn.0041476e
add esp, 0x10
mov dword [ebp - 0x78], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x411443
mov eax, 0x56b052
push eax
push 0x80000301
push 0
push dword [ebp - 0x78]
fld qword [ebp - 0x74]
call fcn.00401c9c
push 0x80000301
push 0
push eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x411471
mov eax, 0x56b052
push eax
push 4
mov ebx, 0x415d00
call fcn.0041476e
add esp, 0x34
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
push eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x4114a1
push ebx
call fcn.00414762
add esp, 4
pop eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x4114bf
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.00414768
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
jmp 0x4114c4
push eax
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4114e3
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4114df
imul eax, dword [ebx]
jmp 0x4114d4
mov ecx, eax
test ecx, ecx
je 0x41150b
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00414762
add esp, 4
pop ebx
call fcn.00414762
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4114e9
call fcn.00414762
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
call fcn.00414762
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x41152f
push ebx
call fcn.00414762
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x41153f