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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
push ebx
push esi
mov esi, ecx
push edi
movsx edi, word [esi + 0x4c]
mov eax, dword [esi]
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], edi
mov ecx, dword [esi + edi*4 + 0x78]
mov eax, dword [eax + 4]
mov dword [esp + 0x1c], eax
mov ax, word [esi + edi*2 + 0x4e]
cmp ax, word [ecx + 0x12]
jae 0x442483
cmp byte [esi + 0x49], 1
jne 0x442483
movzx edx, ax
mov eax, dword [ecx + 0x40]
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], ecx
movzx ebx, byte [eax + edx*2]
movzx eax, byte [eax + edx*2 + 1]
shl ebx, 8
or ebx, eax
movzx eax, word [ecx + 0x14]
and ebx, eax
add ebx, dword [ecx + 0x38]
cmp byte [ecx + 5], 0
jne 0x4422b9
lea eax, [esp + 0x14]
mov dword [esp + 0x14], 0
push eax
push esi
call fcn.0043ebc0
add esp, 8
test eax, eax
jne 0x442488
mov edx, dword [esi + 0x3c]
mov ecx, dword [esp + 0x1c]
push esi
call fcn.0043a110
add esp, 4
test eax, eax
jne 0x442488
cmp dword [esi + 0x10], eax
jne 0x44230b
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 8]
test eax, eax
je 0x44230b
lea ebx, [ebx]
test byte [eax + 0x48], 0x10
je 0x442304
cmp dword [eax + 0x18], ecx
jne 0x442304
cmp dword [eax + 0x1c], edx
jne 0x442304
mov byte [eax + 0x49], 0
mov eax, dword [eax + 8]
test eax, eax
jne 0x4422f0
mov ecx, dword [esp + 0x18]
mov ecx, dword [ecx + 0x44]
mov edx, dword [ecx + 0x10]
mov eax, dword [edx + 0x94]
cmp eax, dword [edx + 0x98]
jbe 0x44232a
call fcn.00436140
jmp 0x44232f
call fcn.00435f90
test eax, eax
jne 0x442488
lea eax, [esp + 0x10]
mov edx, ebx
mov ebx, dword [esp + 0x18]
mov ecx, ebx
push eax
call fcn.0043f830
mov edx, dword [esp + 0x24]
add esp, 4
mov dword [esp + 0x14], eax
mov ecx, ebx
lea eax, [esp + 0x14]
push eax
movzx eax, word [esp + 0x14]
push eax
call fcn.0043fdb0
mov eax, dword [esp + 0x1c]
add esp, 8
test eax, eax
jne 0x442488
cmp byte [ebx + 5], al
jne 0x442424
movsx eax, word [esi + 0x4c]
mov ebx, dword [esi + eax*4 + 0x78]
mov eax, dword [esi + edi*4 + 0x7c]
mov dword [esp + 0x10], ebx
movzx ecx, word [ebx + 0x12]
mov eax, dword [eax + 0x48]
mov dword [esp + 0x24], eax
mov eax, dword [ebx + 0x40]
movzx edx, byte [eax + ecx*2 - 2]
movzx eax, byte [eax + ecx*2 - 1]
mov ecx, ebx
shl edx, 8
or edx, eax
movzx eax, word [ebx + 0x14]
and edx, eax
add edx, dword [ebx + 0x38]
mov dword [esp + 0x28], edx
call fcn.0043a790
mov ecx, dword [esp + 0x10]
movzx ebx, ax
mov eax, dword [esp + 0x1c]
mov ecx, dword [ecx + 0x44]
mov edi, dword [eax + 0x50]
call fcn.004363f0
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x28]
lea eax, [ebx + 4]
push edi
push eax
mov eax, dword [esp + 0x38]
add eax, 0xfffffffc
push eax
call fcn.0043fee0
add esp, 0x14
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0x14]
mov ecx, eax
push ebx
movzx edx, word [eax + 0x12]
dec edx
call fcn.0043fdb0
mov eax, dword [esp + 0x1c]
add esp, 8
test eax, eax
jne 0x442488
mov edi, dword [esp + 0x2c]
mov ecx, esi
call fcn.00441e10
mov ebx, eax
test ebx, ebx
jne 0x44247a
movsx ecx, word [esi + 0x4c]
cmp ecx, edi
jle 0x442473
lea esp, [esp]
movzx edx, word [esi + 0x4c]
movsx eax, dx
mov ecx, dword [esi + eax*4 + 0x78]
lea eax, [edx - 1]
mov word [esi + 0x4c], ax
test ecx, ecx
je 0x44245e
mov ecx, dword [ecx + 0x44]
call fcn.00435d10
movsx eax, word [esi + 0x4c]
cmp eax, edi
jg 0x442440
mov ecx, esi
call fcn.00441e10
mov ebx, eax
test ebx, ebx
jne 0x44247a
mov ecx, esi
call fcn.0043e140
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret