Function at 0x4473ad
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.004480c0
cmp eax, esi
jne 0x44758f
cmp edx, ebx
jne 0x44758f
lea eax, [esp + 0x18]
push eax
call fcn.004472fa
cmp dword [esp + 0x18], 0x4034b50
jne 0x44758f
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.0044733d
lea eax, [esp + 0x24]
mov ecx, edi
push eax
call fcn.0044733d
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.0044733d
mov eax, dword [edi + 0x64]
cmp dword [esp + 0x14], eax
jne 0x44758f
test eax, eax
je 0x447454
cmp eax, 8
jne 0x44758f
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.004472fa
lea eax, [esp + 0x14]
mov ecx, edi
push eax
call fcn.004472fa
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x24]
cmp eax, dword [edi + 0x6c]
je 0x447482
test bl, 8
je 0x44758f
xorps xmm0, xmm0
lea eax, [esp + 0x28]
push eax
mov ecx, edi
movlpd qword [esp + 0x2c], xmm0
movlpd qword [esp + 0x1c], xmm0
call fcn.004472fa
lea eax, [esp + 0x18]
mov ecx, edi
push eax
call fcn.004472fa
lea eax, [esp + 0x34]
mov ecx, edi
push eax
call fcn.0044733d
mov esi, dword [esp + 0x34]
cmp esi, dword [edi + 0x80]
jne 0x44758f
and dword [esp + 0x34], 0
lea eax, [esp + 0x34]
push eax
mov ecx, edi
mov dword [ebp], esi
call fcn.0044733d
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 0x447506
test ebp, ebp
je 0x447523
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
cmp ecx, 0xffffffff
jne 0x4475f9
test eax, eax
jne 0x4475f9
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 0x44758b
push eax
push esi
mov ecx, edi
call fcn.004480c0
cmp eax, esi
jne 0x44758f
cmp edx, dword [esp + 0x14]
jne 0x44758f
lea eax, [esp + 0x24]
push eax
call fcn.0044733d
lea eax, [esp + 0x3c]
mov ecx, edi
push eax
call fcn.0044733d
cmp dword [esp + 0x24], 1
je 0x44759b
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 0x447537
ja 0x44758f
cmp esi, ecx
jb 0x447537
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 0x4475c9
cmp dword [esp + 0x1c], 0
jne 0x4475c9
mov esi, dword [esp + 0x3c]
cmp esi, 8
jb 0x44758f
lea eax, [esp + 0x18]
mov ecx, edi
push eax
call fcn.004472a1
mov ecx, dword [esp + 0x18]
sub esi, 8
jmp 0x4475cd
mov esi, dword [esp + 0x3c]
cmp dword [esp + 0x28], 0xffffffff
jne 0x4475f1
test ebp, ebp
jne 0x4475f1
cmp esi, 8
jb 0x44758f
lea eax, [esp + 0x28]
mov ecx, edi
push eax
call fcn.004472a1
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 0x447603
cmp ebp, dword [edi + 0x74]
je 0x447608
test bl, 8
je 0x44758f
cmp ecx, dword [edi + 0x78]
jne 0x447619
cmp eax, dword [edi + 0x7c]
jne 0x447619
mov al, 1
jmp 0x447591
shr ebx, 3
and bl, 1
mov al, bl
jmp 0x447591