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

Disassembly:
sub esp, 0x60
mov eax, dword [esp + 0x68]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x70]
push edi
xor edi, edi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x7c]
push esi
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x7c], eax
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
call fcn.0045164f
pop ecx
or ebp, 0xffffffff
mov dword [esp + 0x1c], edx
mov ebx, edi
mov dword [esp + 0x28], eax
and dword [esp + 0x20], ebx
mov ecx, eax
or ecx, dword [esp + 0x1c]
mov edx, ebp
mov dword [esp + 0x34], edx
mov dword [esp + 0x24], 2
jne 0x454e07
and dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebp
mov dword [esp + 0x1c], ebp
mov eax, dword [esi + 4]
mov ecx, dword [esp + 0x80]
mov esi, dword [esp + 0x84]
mov dword [eax + 0x1800], ecx
mov dword [eax + 0x1804], esi
mov esi, dword [esp + 0x74]
cmp dword [esp + 0x20], 0
fld qword [0x525678]
je 0x454e64
mov eax, dword [esp + 0x84]
cmp edx, eax
ja 0x454e64
jb 0x454e46
cmp ebp, ecx
ja 0x454e64
sub ecx, ebp
sbb eax, edx
test eax, eax
ja 0x454e64
jb 0x454e58
cmp ecx, 0x1fffe
ja 0x454e64
and dword [esp + 0x74], 0
fstp st(0)
jmp 0x454fcb
mov eax, dword [esp + 0x24]
cmp dword [esp + 0x20], eax
jb 0x454e8b
mov ebx, dword [esp + 0x10]
fstp st(0)
add ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x78]
adc edi, dword [esp + 0x18]
shrd ebx, edi, 1
shr edi, 1
jmp 0x454f9d
mov eax, dword [esp + 0x10]
mov ebx, closesocket
sub eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x78]
sbb ecx, dword [esp + 0x18]
xor edi, edi
mov dword [esp + 0x40], eax
mov edx, edi
mov eax, ecx
mov dword [esp + 0x48], edi
and ecx, 0x7fffffff
mov dword [esp + 0x58], edi
and eax, 0x80000000
mov dword [esp + 0x44], ecx
fild qword [esp + 0x40]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x28]
sub eax, dword [esp + 0x38]
fild qword [esp + 0x48]
sbb ecx, dword [esp + 0x3c]
mov dword [esp + 0x50], eax
mov eax, ecx
and ecx, 0x7fffffff
mov dword [esp + 0x68], edi
and eax, 0x80000000
mov dword [esp + 0x54], ecx
fchs
mov ecx, dword [esp + 0x84]
faddp st(1)
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x80]
sub eax, dword [esp + 0x38]
mov dword [esp + 0x60], eax
sbb ecx, dword [esp + 0x3c]
fstp qword [esp + 0x2c]
fld qword [esp + 0x2c]
mov eax, ecx
fild qword [esp + 0x50]
and ecx, 0x7fffffff
and eax, ebx
mov dword [esp + 0x64], ecx
mov ecx, edi
mov dword [esp + 0x6c], eax
fild qword [esp + 0x58]
mov dword [esp + 0x74], ecx
fchs
faddp st(1)
fstp qword [esp + 0x2c]
fld qword [esp + 0x2c]
fild qword [esp + 0x60]
fild qword [esp + 0x68]
fchs
faddp st(1)
fstp qword [esp + 0x2c]
fdivr qword [esp + 0x2c]
mov dword [esp + 0x2c], edx
fmulp st(1)
fcom st(1)
fnstsw ax
test ah, 1
jne 0x454f8a
fsub st(1)
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x454f8c
add ecx, edi
mov dword [esp + 0x74], ecx
adc edx, ebx
mov dword [esp + 0x2c], edx
jmp 0x454f8c
fstp st(1)
call fcn.0041b226
mov ebx, eax
mov edi, edx
add ebx, dword [esp + 0x74]
adc edi, dword [esp + 0x2c]
mov eax, dword [esi + 4]
push dword [eax + 0x30]
push edi
push ebx
push esi
call dword [eax + 8]
add esp, 0x10
test eax, eax
jne 0x455091
push esi
call fcn.00451562
pop ecx
test eax, eax
je 0x455099
mov dword [esp + 0x74], 1
mov eax, dword [esi + 4]
push esi
and dword [eax + 0x180c], 0
call fcn.00451808
pop ecx
test eax, eax
je 0x455091
mov eax, dword [esi]
cmp dword [eax], 7
je 0x455091
mov eax, dword [esi + 4]
xor ecx, ecx
cmp dword [eax + 0x180c], ecx
jne 0x455010
cmp dword [esp + 0x74], ecx
je 0x455091
mov edx, dword [esp + 0x34]
mov dword [esp + 0x24], ecx
jmp 0x455074
cmp dword [eax + 0xe30], ecx
je 0x45508c
mov edx, dword [eax + 0xec4]
mov ebp, dword [eax + 0xec0]
mov dword [esp + 0x34], edx
cmp dword [esp + 0x74], ecx
je 0x45507c
cmp edx, dword [esp + 0x84]
ja 0x455060
jb 0x455042
cmp ebp, dword [esp + 0x80]
ja 0x455060
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], edx
cmp dword [esp + 0x14], ebx
jne 0x455056
cmp dword [esp + 0x18], edi
je 0x455091
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], edi
jmp 0x45507c
mov dword [esp + 0x28], ebp
mov dword [esp + 0x1c], edx
cmp dword [esp + 0x10], ebx
jne 0x455074
cmp dword [esp + 0x78], edi
je 0x455091
mov dword [esp + 0x78], edi
mov dword [esp + 0x10], ebx
inc dword [esp + 0x20]
mov ecx, dword [esp + 0x80]
jmp 0x454e28
xor eax, eax
inc eax
jmp 0x45509b
mov eax, dword [esi]
mov dword [eax], 6
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret