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

Disassembly:
sub esp, 0x58
push ebx
push ebp
push esi
push edi
push 1
lea eax, [esp + 0x3c]
push eax
mov esi, ecx
call fcn.00475c60
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0x38]
push 0
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x48]
sub eax, dword [esp + 0x40]
lea edx, [esp + 0x4c]
push edx
lea edx, [esp + 0x30]
push edx
mov dword [esp + 0x30], eax
lea edx, [esp + 0x3c]
push edx
mov edx, dword [esi + 0x188]
lea eax, [esi + 0x2e4]
push eax
mov eax, dword [esi + 0x170]
push eax
mov eax, dword [esi + 0x184]
push edx
lea ecx, [esi + 0x150]
push eax
push ecx
mov ecx, esi
call fcn.00447a50
fldz
mov eax, dword [esp + 0x70]
fld qword [0x48b848]
lea ecx, [esp + 0x30]
sub eax, ecx
lea ebp, [esi + 0x158]
mov dword [esp + 0x20], eax
xor edi, edi
fild dword [esp + edi + 0x30]
lea ebx, [esp + edi + 0x30]
fmul qword [ebp]
fcom st(2)
fnstsw ax
test ah, 5
jp 0x44aaae
fsub st(1)
jmp 0x44aab0
fadd st(1)
call fcn.00478370
fild dword [esp + edi + 0x28]
mov edx, dword [esp + 0x20]
mov dword [edx + ebx], eax
fmul qword [ebp]
fcom st(2)
fnstsw ax
test ah, 5
jp 0x44aad0
fsub st(1)
jmp 0x44aad2
fadd st(1)
call fcn.00478370
mov ecx, dword [esp + 0x74]
mov dword [edi + ecx], eax
add edi, 4
add ebp, 8
cmp edi, 8
jl 0x44aa96
lea ebp, [esp + 0x48]
lea ebx, [esi + 0x158]
xor edi, edi
mov edx, dword [ebp + 8]
sub edx, dword [ebp]
mov dword [esp + 0x20], edx
fild dword [esp + 0x20]
fmul qword [ebx]
fcom st(2)
fnstsw ax
test ah, 5
jp 0x44ab12
fsub st(1)
jmp 0x44ab14
fadd st(1)
call fcn.00478370
mov dword [esp + edi + 0x30], eax
mov eax, dword [ebp + 0xc]
sub eax, dword [ebp + 4]
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
fmul qword [ebx]
fcom st(2)
fnstsw ax
test ah, 5
jp 0x44ab3a
fsub st(1)
jmp 0x44ab3c
fadd st(1)
call fcn.00478370
mov dword [esp + edi + 0x28], eax
add edi, 4
add ebx, 8
add ebp, 0x10
cmp edi, 8
jl 0x44aaf5
lea ecx, [esp + 0x10]
fstp st(0)
push ecx
fstp st(0)
mov ecx, dword [esi + 0x184]
lea edx, [esp + 0x24]
push edx
lea eax, [esi + 0x2e4]
push eax
lea eax, [esi + 0x158]
push eax
mov eax, dword [esi + 0x188]
push eax
push ecx
lea eax, [esi + 0x150]
push eax
mov ecx, esi
call fcn.00448ec0
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
xor edi, edi
cmp ecx, eax
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edi
jge 0x44abac
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
cmp ecx, eax
jge 0x44abc3
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x14], eax
mov ecx, esi
call fcn.00475b70
sub dword [esp + 0x14], eax
mov ecx, esi
call fcn.00475c10
sub dword [esp + 0x18], eax
mov ebp, dword [esp + 0x6c]
mov eax, dword [esp + 0x78]
mov dword [eax + 4], edi
mov dword [eax], edi
mov eax, dword [esp + 0x7c]
mov dword [eax + 4], edi
mov dword [eax], edi
xor eax, eax
mov dword [ebp + 0xc], edi
mov dword [ebp + 8], edi
mov dword [ebp + 4], edi
mov dword [ebp], edi
mov dword [ebp + 0x1c], edi
mov dword [ebp + 0x18], edi
mov dword [ebp + 0x14], edi
mov dword [ebp + 0x10], edi
cmp dword [esi + 0x184], edi
mov dword [esp + 0x6c], eax
jle 0x44af0a
jmp 0x44ac24
mov eax, dword [esp + 0x6c]
mov ebx, eax
shl ebx, 4
fild dword [esp + ebx + 0x48]
fmul qword [esi + eax*8 + 0x158]
fldz
fcom st(1)
fnstsw ax
fld qword [0x48b848]
test ah, 0x41
jne 0x44ac49
fsub st(2), st(0)
jmp 0x44ac4b
fadd st(2), st(0)
fxch st(2)
call fcn.00478370
fild dword [esp + ebx + 0x4c]
mov edx, dword [esp + 0x6c]
mov edi, eax
fmul qword [esi + edx*8 + 0x158]
mov dword [esp + ebx + 0x48], edi
fcom st(1)
fnstsw ax
test ah, 5
jp 0x44ac74
fsub st(2)
jmp 0x44ac76
fadd st(2)
call fcn.00478370
fild dword [esp + ebx + 0x50]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x1c], eax
fmul qword [esi + ecx*8 + 0x158]
mov dword [esp + ebx + 0x4c], eax
fcom st(1)
fnstsw ax
test ah, 5
jp 0x44ac9f
fsub st(2)
jmp 0x44aca1
fadd st(2)
call fcn.00478370
fild dword [esp + ebx + 0x54]
mov edx, eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x6c]
fmul qword [esi + eax*8 + 0x158]
mov dword [esp + ebx + 0x50], edx
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x44acd9
fsubrp st(1)
call fcn.00478370
mov ecx, eax
mov dword [esp + 0x20], ecx
jmp 0x44ace6
faddp st(1)
call fcn.00478370
mov dword [esp + 0x20], eax
mov ecx, eax
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x10]
mov dword [esp + ebx + 0x54], ecx
sub ecx, edx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x6c]
sub eax, edi
add ebx, ebp
add ecx, ecx
test edi, edi
mov dword [esp + 0x24], eax
jge 0x44ad1d
neg edi
mov dword [ebx], edi
mov edi, dword [esp + 0x78]
add ecx, ecx
mov dword [ecx + edi], 0
jmp 0x44ad30
mov eax, dword [esp + 0x78]
add ecx, ecx
mov dword [ebx], 0
mov dword [ecx + eax], edi
mov eax, dword [esp + 0x24]
test edx, edx
jge 0x44ad46
neg edx
mov dword [ebx + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [ecx + edx], 0
jmp 0x44ad54
mov edi, dword [esp + 0x7c]
mov dword [ebx + 4], 0
mov dword [ecx + edi], edx
mov edx, dword [esp + 0x70]
mov edx, dword [ecx + edx]
cmp dword [esp + 0x10], edx
jg 0x44ad65
mov edx, dword [ebx]
add edx, eax
mov eax, dword [esp + 0x74]
mov dword [ebx + 8], edx
mov ecx, dword [ecx + eax]
cmp dword [esp + 0x20], ecx
jg 0x44ad7c
mov ecx, dword [ebx + 4]
add ecx, dword [esp + 0x1c]
mov dword [ebx + 0xc], ecx
cmp dword [esi + 0x184], 2
jne 0x44aed2
mov eax, dword [esi + 0x30c]
test eax, eax
je 0x44ae93
cmp dword [esi + 0x310], 0
je 0x44ae93
mov edi, 1
sub eax, edi
je 0x44ae54
sub eax, edi
je 0x44ae0a
sub eax, edi
jne 0x44aed7
cmp dword [esi + 0x188], 0
jne 0x44adde
cmp dword [esp + 0x6c], 0
jne 0x44adde
mov edx, dword [esp + 0x2c]
push edx
push 0
push ebp
call dword [sym.imp.USER32.dll_OffsetRect]
cmp dword [esi + 0x188], edi
jne 0x44aed7
cmp dword [esp + 0x6c], edi
jne 0x44aed7
mov eax, dword [esp + 0x28]
push eax
push 0
lea eax, [ebp + 0x10]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
jmp 0x44aed7
cmp dword [esi + 0x188], 0
jne 0x44ae28
cmp dword [esp + 0x6c], 0
jne 0x44ae28
mov ecx, dword [esp + 0x34]
push 0
push ecx
push ebp
call dword [sym.imp.USER32.dll_OffsetRect]
cmp dword [esi + 0x188], edi
jne 0x44aed7
cmp dword [esp + 0x6c], edi
jne 0x44aed7
mov edx, dword [esp + 0x30]
push 0
push edx
lea eax, [ebp + 0x10]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
jmp 0x44aed7
cmp dword [esi + 0x188], 0
jne 0x44ae74
cmp dword [esp + 0x6c], edi
jne 0x44ae74
mov eax, dword [esp + 0x28]
push eax
push 0
lea eax, [ebp + 0x10]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
cmp dword [esi + 0x188], edi
jne 0x44aed7
cmp dword [esp + 0x6c], 0
jne 0x44aed7
mov ecx, dword [esp + 0x2c]
push ecx
push 0
push ebp
call dword [sym.imp.USER32.dll_OffsetRect]
jmp 0x44aed7
cmp dword [esi + 0x188], 0
jne 0x44aeb4
cmp dword [esp + 0x6c], 1
jne 0x44aeb4
mov edx, dword [esp + 0x30]
push 0
push edx
lea eax, [ebp + 0x10]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
cmp dword [esi + 0x188], 1
jne 0x44aed2
cmp dword [esp + 0x6c], 0
jne 0x44aed2
mov eax, dword [esp + 0x34]
push 0
push eax
push ebp
call dword [sym.imp.USER32.dll_OffsetRect]
mov edi, 1
mov ecx, dword [esp + 0x14]
sub ecx, dword [esi + 0x16c]
mov edx, dword [esp + 0x18]
sub edx, dword [esi + 0x168]
push ecx
push edx
push ebx
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [esp + 0x6c]
add eax, edi
cmp eax, dword [esi + 0x184]
mov dword [esp + 0x6c], eax
jl 0x44ac20
cmp dword [esi + 0x184], 2
jne 0x44af50
mov ecx, esi
call fcn.0044a620
test al, al
je 0x44af50
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebp]
mov edx, dword [ebp + 4]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
lea eax, [ebp + 0x10]
mov dword [ebp], ebx
mov ebx, dword [eax + 4]
mov dword [ebp + 4], ebx
mov ebx, dword [eax + 8]
mov dword [ebp + 8], ebx
mov ebx, dword [eax + 0xc]
mov dword [eax], ecx
mov dword [eax + 4], edx
mov dword [eax + 8], esi
mov dword [ebp + 0xc], ebx
mov dword [eax + 0xc], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret 0x14