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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0x28]
mov dword [ebp - 4], edi
cmp byte [esi + 0x49], 4
mov edx, dword [esi]
mov dword [ebp - 8], 0
mov dword [ebp + 8], edx
mov eax, dword [edx + 4]
mov dword [ebp - 0xc], eax
jne 0x4434c2
mov eax, dword [esi + 0x44]
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x3c]
test eax, eax
je 0x443500
nop dword [eax]
cmp eax, esi
je 0x4434dd
test ecx, ecx
je 0x4434e6
cmp dword [eax + 0x3c], ecx
je 0x4434e6
mov eax, dword [eax + 8]
test eax, eax
jne 0x4434d0
jmp 0x443500
test eax, eax
je 0x443500
push esi
push ecx
push eax
call fcn.0043ba20
add esp, 0xc
test eax, eax
jne 0x44369f
mov edx, dword [ebp + 8]
cmp dword [esi + 0x10], 0
push ebx
mov ebx, dword [ebp + 0x14]
jne 0x44355c
mov eax, dword [edx + 4]
mov eax, dword [eax + 8]
test eax, eax
je 0x443532
mov ecx, dword [ebp + 0x10]
test byte [eax + 0x48], 0x10
je 0x44352b
cmp dword [eax + 0x18], ecx
jne 0x44352b
cmp dword [eax + 0x1c], ebx
jne 0x44352b
mov byte [eax + 0x49], 0
mov eax, dword [eax + 8]
test eax, eax
jne 0x443517
test byte [esi + 0x48], 2
mov eax, dword [ebp + 0x10]
je 0x44355f
test ebx, ebx
jl 0x44355f
jg 0x443545
test eax, eax
je 0x44355f
sub eax, 1
mov ecx, ebx
sbb ecx, 0
cmp dword [esi + 0x18], eax
jne 0x44355c
cmp dword [esi + 0x1c], ecx
jne 0x44355c
or edi, 0xffffffff
jmp 0x443585
mov eax, dword [ebp + 0x10]
test edi, edi
jne 0x443588
lea ecx, [ebp - 4]
push ecx
push dword [ebp + 0x24]
push ebx
push eax
push dword [ebp + 0xc]
push esi
call fcn.0041e620
mov ecx, eax
add esp, 0x18
test ecx, ecx
jne 0x44369c
mov edi, dword [ebp - 4]
mov dword [ebp + 0x28], edi
movsx eax, word [esi + 0x4c]
lea ecx, [ebp - 8]
push ecx
push dword [ebp + 0x20]
mov ecx, dword [ebp + 0x10]
push dword [ebp + 0x1c]
mov edi, dword [esi + eax*4 + 0x78]
push dword [ebp + 0x18]
mov eax, dword [ebp - 0xc]
push ebx
push ecx
push dword [ebp + 0xc]
mov eax, dword [eax + 0x50]
push eax
push edi
mov dword [ebp - 4], eax
call fcn.00429250
mov ecx, eax
add esp, 0x24
mov dword [ebp + 8], ecx
test ecx, ecx
jne 0x44369c
movsx eax, word [esi + 0x4c]
movzx edx, word [esi + eax*2 + 0x4e]
lea ecx, [esi + eax*2]
mov eax, dword [ebp + 0x28]
mov ebx, edx
test eax, eax
jne 0x443640
push dword [edi + 0x44]
call fcn.00459da0
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44369c
mov eax, dword [edi + 0x40]
movzx ecx, byte [eax + ebx*2 + 1]
movzx eax, byte [eax + ebx*2]
shl eax, 8
or ecx, eax
movzx eax, word [edi + 0x14]
and ecx, eax
add ecx, dword [edi + 0x38]
cmp byte [edi + 5], 0
jne 0x443616
mov edx, dword [ebp - 4]
mov eax, dword [ecx]
mov dword [edx], eax
lea eax, [ebp + 0x28]
push eax
push ecx
push edi
call fcn.0041fbe0
mov dword [ebp + 8], eax
lea eax, [ebp + 8]
push eax
movzx eax, word [ebp + 0x28]
push eax
push ebx
push edi
call fcn.00425910
mov ecx, dword [ebp + 8]
add esp, 0x1c
test ecx, ecx
jne 0x44369c
jmp 0x443653
jns 0x443653
cmp word [edi + 0x12], 0
jbe 0x443653
lea eax, [edx + 1]
mov word [ecx + 0x4e], ax
movzx ebx, ax
lea eax, [ebp + 8]
push eax
push 0
push 0
push dword [ebp - 8]
push dword [ebp - 4]
push ebx
push edi
call fcn.0042f490
mov ecx, dword [ebp + 8]
xor eax, eax
add esp, 0x1c
mov word [esi + 0x2c], ax
test ecx, ecx
jne 0x44369c
cmp byte [edi + 1], al
je 0x44369c
and byte [esi + 0x48], 0xfd
push esi
call fcn.0041c280
mov ecx, eax
add esp, 4
movsx eax, word [esi + 0x4c]
mov eax, dword [esi + eax*4 + 0x78]
mov byte [eax + 1], 0
mov byte [esi + 0x49], 0
mov eax, ecx
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret