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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x666380
mov eax, dword fs:[0]
push eax
sub esp, 0x64
push ebx
push ebp
push esi
push edi
mov eax, dword [0x702ca8]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi + 0x20]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x5c], esp
mov dword [esi], 0x6c407c
xor ebx, ebx
push 0xb
mov edi, 0xf
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c2018
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xbc], ebx
mov dword [esp + 0x7c], esp
or ebp, 0xffffffff
push ebp
push ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x718184
mov byte [ecx + 4], bl
call fcn.00402610
mov ecx, dword [0x717c9c]
mov edx, dword [ecx + 0x6c]
push edx
mov dword [esp + 0xc0], ebp
call fcn.00466250
mov eax, dword [esi + 0x24]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push 0xc
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c2024
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xbc], 1
mov dword [esp + 0x78], esp
push ebp
push ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x718184
mov byte [ecx + 4], bl
call fcn.00402610
mov ecx, dword [0x717c9c]
mov edx, dword [ecx + 0x6c]
push edx
mov dword [esp + 0xc0], ebp
call fcn.00466250
movzx eax, byte [esi + 0x10]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push 0xb
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c2070
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov dword [esp + 0xbc], 2
mov ecx, esp
mov dword [esp + 0x78], esp
push ebp
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
mov byte [ecx + 4], bl
push ebx
push 0x718184
call fcn.00402610
mov ecx, dword [0x717c9c]
mov edx, dword [ecx + 0x6c]
push edx
mov dword [esp + 0xc0], ebp
call fcn.00466550
movzx eax, byte [esi + 0x11]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push edi
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c207c
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xbc], 3
mov dword [esp + 0x78], esp
push ebp
push ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x718184
mov byte [ecx + 4], bl
call fcn.00402610
mov ecx, dword [0x717c9c]
mov edx, dword [ecx + 0x6c]
push edx
mov dword [esp + 0xc0], ebp
call fcn.00466550
movzx eax, byte [esi + 0x12]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x60], esp
push 9
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c20b0
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xbc], 4
mov dword [esp + 0x78], esp
push ebp
push ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x718184
mov byte [ecx + 4], bl
call fcn.00402610
mov ecx, dword [0x717c9c]
mov edx, dword [ecx + 0x6c]
push edx
mov dword [esp + 0xc0], ebp
call fcn.00466550
fld dword [esi + 4]
sub esp, 0x24
mov ecx, esp
fstp qword [esp + 0x1c]
mov dword [esp + 0x64], esp
push 0x10
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c2034
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov dword [esp + 0xc0], 5
mov ecx, esp
mov dword [esp + 0x7c], esp
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push ebp
push ebx
push 0x718184
mov byte [ecx + 4], bl
call fcn.00402610
mov eax, dword [0x717c9c]
mov ecx, dword [eax + 0x6c]
push ecx
mov dword [esp + 0xc4], ebp
call fcn.004663d0
fld dword [esi + 8]
sub esp, 0x24
mov ecx, esp
fstp qword [esp + 0x1c]
mov dword [esp + 0x64], esp
push 0x10
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c2048
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xc0], 6
mov dword [esp + 0x7c], esp
push ebp
push ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x718184
mov byte [ecx + 4], bl
call fcn.00402610
mov edx, dword [0x717c9c]
mov eax, dword [edx + 0x6c]
push eax
mov dword [esp + 0xc4], ebp
call fcn.004663d0
fld dword [esi + 0xc]
sub esp, 0x24
mov ecx, esp
fstp qword [esp + 0x1c]
mov dword [esp + 0x64], esp
push 0x10
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x6c205c
mov byte [ecx + 4], bl
call fcn.004027b0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xc0], 7
mov dword [esp + 0x7c], esp
push ebp
push ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push 0x718184
mov byte [ecx + 4], bl
call fcn.00402610
mov ecx, dword [0x717c9c]
mov edx, dword [ecx + 0x6c]
push edx
mov dword [esp + 0xc4], ebp
call fcn.004663d0
cmp byte [esi + 0x10], bl
je 0x445b6d
push 1
push esi
mov byte [esi + 0x10], bl
add byte [eax], al
pop ecx
add byte [eax], al
mov eax, dword [esi + 0x3c]
cmp eax, ebx
je 0x445b7f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esi + 0x3c], ebx
mov eax, dword [esi + 0x40]
cmp eax, ebx
je 0x445b91
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esi + 0x40], ebx
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret