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

Disassembly:
sub esp, 0x34
push ebx
push ebp
push esi
mov esi, dword [esp + 0x44]
mov eax, dword [esi + 0x10]
mov ecx, eax
mov ebx, dword [esi + 0x30]
shr ecx, 2
and eax, 0xfffffffb
mov ebp, 1
and ecx, ebp
push edi
mov edi, dword [esp + 0x4c]
mov edx, dword [edi + 4]
mov dword [esp + 0x20], ecx
mov ecx, dword [edi]
mov dword [esi + 0x10], eax
xor eax, eax
mov dword [esi + 0x1e8], eax
mov dword [esi + 0x210], eax
mov eax, dword [esi + 0xc]
dec eax
neg eax
mov dword [esp + 0x2c], ecx
sbb eax, eax
lea ecx, [esp + 0x2c]
and eax, ecx
push eax
push edi
push esi
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x24], 0x3b8edec0
mov dword [esp + 0x3c], edx
call fcn.652146b0
add esp, 0xc
test eax, eax
mov dword [esp + 0x48], eax
je 0x65213629
mov edx, dword [esi + 0x6c]
mov eax, dword [edx + 0x98]
cmp dword [ebx + 0x38], eax
jae 0x65213611
push eax
mov eax, dword [ebx]
push eax
call fcn.65244240
mov dword [ebx], eax
mov ecx, dword [esi + 0x6c]
mov edx, dword [ecx + 0x98]
add esp, 8
test eax, eax
mov dword [ebx + 0x38], edx
jne 0x65213611
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x6c]
mov edx, dword [ecx + 0x98]
push eax
push edx
call fcn.652731e0
add esp, 8
mov dword [esp + 0x48], 0
mov eax, dword [esi + 0x6c]
mov ecx, dword [edi]
cmp ecx, dword [eax + 0x28]
jne 0x65213629
mov edx, dword [edi + 4]
cmp edx, dword [eax + 0x2c]
jne 0x65213629
mov dword [esi + 0x210], ebp
mov eax, dword [edi]
mov edi, dword [edi + 4]
mov ecx, eax
and ecx, edi
cmp ecx, 0xffffffff
je 0x6521363b
or eax, edi
jne 0x65213643
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x48]
test eax, eax
je 0x652137a6
mov eax, dword [esi + 0x6c]
mov cx, word [eax + 0xc]
cmp cx, 0x3ed
jae 0x65213765
cmp cx, 0x27
jb 0x65213672
cmp cx, 0x3e8
jb 0x65213765
mov dword [esp + 0x10], 0
mov ebx, dword [esp + 0x28]
mov edi, dword [esp + 0x30]
mov ebp, dword [esp + 0x2c]
jmp 0x65213690
mov eax, dword [esp + 0x10]
test eax, eax
je 0x652137c3
push edi
push ebp
push esi
call fcn.65211860
add esp, 0xc
test eax, eax
je 0x6521379e
mov eax, ebp
or eax, edi
je 0x652137a6
lea ecx, [esp + 0x4c]
push ecx
push esi
call fcn.652133c0
add esp, 8
test eax, eax
je 0x6521379e
cmp dword [esp + 0x4c], 0xc
jne 0x65213788
push 4
lea edx, [esp + 0x20]
push edx
push esi
call fcn.65211dc0
mov eax, dword [esp + 0x28]
push eax
call fcn.65269300
push 8
lea ecx, [esp + 0x50]
push ecx
push esi
mov dword [esp + 0x34], eax
call fcn.65211dc0
push 8
lea edx, [esp + 0x54]
push edx
push esi
call fcn.65211dc0
add esp, 0x28
cmp edi, ebx
ja 0x65213758
jb 0x6521371e
cmp ebp, dword [esp + 0x24]
ja 0x65213758
cmp ebp, dword [esp + 0x24]
jne 0x65213732
cmp edi, ebx
jne 0x65213732
mov dword [esi + 0x1e8], 1
mov eax, dword [esp + 0x14]
test eax, eax
je 0x652137a6
mov ebx, dword [esp + 0x38]
cmp edi, ebx
jb 0x652137a6
mov eax, dword [esp + 0x34]
ja 0x6521374c
cmp ebp, eax
jbe 0x652137a6
mov dword [esp + 0x14], 0
mov dword [esp + 0x24], eax
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x40]
jmp 0x65213690
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x6521367a
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x30]
mov ebp, dword [eax + 0x40]
mov edi, dword [eax + 0x44]
mov dword [esp + 0x24], edx
jmp 0x65213690
mov eax, dword [esi + 0x48]
push 0x248d
push eax
call fcn.652659d0
add esp, 8
call fcn.65211b80
mov dword [esp + 0x48], 0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x652137c3
mov edx, dword [esp + 0x18]
mov eax, dword [esi + 0x2c]
mov ecx, dword [esi + 0x78]
push edx
push eax
call dword [ecx + 0x9c]
add esp, 8
mov edi, dword [esi + 0x10]
mov ecx, dword [esp + 0x20]
lea edx, [ecx*4]
xor edx, edi
mov eax, edi
and edx, 4
xor eax, edx
pop edi
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x44]
pop esi
pop ebp
pop ebx
add esp, 0x34
ret