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

Disassembly:
sub esp, 0x20
mov eax, dword [esp + 0x2c]
push ebx
push ebp
mov ebp, dword [esp + 0x2c]
xor ebx, ebx
push esi
push edi
mov edi, ecx
mov esi, dword [edi + 0xa8]
add esi, dword [edi + 0x20]
adc ebx, dword [edi + 0x24]
xor ecx, ecx
mov dword [eax], ecx
mov eax, dword [esp + 0x38]
push ebx
mov dword [ebp], ecx
mov dword [esp + 0x18], ecx
mov dword [eax], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x28], ecx
mov ecx, edi
push esi
call fcn.00447e57
cmp eax, esi
jne 0x447326
cmp edx, ebx
jne 0x447326
lea eax, [esp + 0x18]
push eax
call fcn.00447091
cmp dword [esp + 0x18], 0x4034b50
jne 0x447326
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.004470d4
lea eax, [esp + 0x24]
mov ecx, edi
push eax
call fcn.004470d4
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.004470d4
mov eax, dword [edi + 0x64]
cmp dword [esp + 0x14], eax
jne 0x447326
test eax, eax
je 0x4471eb
cmp eax, 8
jne 0x447326
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.00447091
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.00447091
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x24]
cmp eax, dword [edi + 0x6c]
je 0x447219
test bl, 8
je 0x447326
xorps xmm0, xmm0
lea eax, [esp + 0x28]
push eax
mov ecx, edi
movlpd qword [esp + 0x2c], xmm0
movlpd qword [esp + 0x1c], xmm0
call fcn.00447091
lea eax, [esp + 0x18]
mov ecx, edi
push eax
call fcn.00447091
lea eax, [esp + 0x34]
mov ecx, edi
push eax
call fcn.004470d4
mov esi, dword [esp + 0x34]
cmp esi, dword [edi + 0x80]
jne 0x447326
and dword [esp + 0x34], 0
lea eax, [esp + 0x34]
push eax
mov ecx, edi
mov dword [ebp], esi
call fcn.004470d4
mov eax, dword [esp + 0x38]
add esi, 0x1e
add esi, dword [edi + 0xa8]
mov ecx, dword [esp + 0x34]
add dword [ebp], ecx
mov edx, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov dword [eax], esi
mov eax, dword [esp + 0x3c]
mov dword [eax], ecx
cmp edx, 0xffffffff
jne 0x44729d
test ebp, ebp
je 0x4472ba
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
cmp ecx, 0xffffffff
jne 0x447390
test eax, eax
jne 0x447390
mov ecx, dword [esp + 0x34]
and dword [esp + 0x3c], 0
xor eax, eax
and dword [esp + 0x24], 0
add ecx, esi
mov dword [esp + 0x14], eax
jmp 0x447322
push eax
push esi
mov ecx, edi
call fcn.00447e57
cmp eax, esi
jne 0x447326
cmp edx, dword [esp + 0x14]
jne 0x447326
lea eax, [esp + 0x24]
push eax
call fcn.004470d4
lea eax, [esp + 0x3c]
mov ecx, edi
push eax
call fcn.004470d4
cmp dword [esp + 0x24], 1
je 0x447332
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
add eax, 4
add esi, eax
mov eax, dword [esp + 0x14]
adc eax, 0
mov ecx, dword [ecx]
add ecx, dword [esp + 0x34]
mov dword [esp + 0x14], eax
test eax, eax
jb 0x4472ce
ja 0x447326
cmp esi, ecx
jb 0x4472ce
xor al, al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret 0xc
mov ecx, dword [esp + 0x18]
cmp ecx, 0xffffffff
jne 0x447360
cmp dword [esp + 0x1c], 0
jne 0x447360
mov esi, dword [esp + 0x3c]
cmp esi, 8
jb 0x447326
lea eax, [esp + 0x18]
mov ecx, edi
push eax
call fcn.00447038
mov ecx, dword [esp + 0x18]
sub esi, 8
jmp 0x447364
mov esi, dword [esp + 0x3c]
cmp dword [esp + 0x28], 0xffffffff
jne 0x447388
test ebp, ebp
jne 0x447388
cmp esi, 8
jb 0x447326
lea eax, [esp + 0x28]
mov ecx, edi
push eax
call fcn.00447038
mov ebp, dword [esp + 0x2c]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
cmp edx, dword [edi + 0x70]
jne 0x44739a
cmp ebp, dword [edi + 0x74]
je 0x44739f
test bl, 8
je 0x447326
cmp ecx, dword [edi + 0x78]
jne 0x4473b0
cmp eax, dword [edi + 0x7c]
jne 0x4473b0
mov al, 1
jmp 0x447328
shr ebx, 3
and bl, 1
mov al, bl
jmp 0x447328