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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x1c
mov ecx, dword [esp + 0x30]
mov edx, dword [ecx + 0x8c]
mov ecx, 0xffffffff
lea eax, [edx + 1]
cmp eax, 0xaaaaaa9
ja 0x5fdcf2
lea ebp, [edx + edx*2]
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x30]
add esi, 0x90
lea edi, [ebp*8 + 0x18]
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov ebx, dword [edx + 0x88]
mov dword [esp], ebx
call fcn.0067089c
mov ecx, 0xffffffff
test eax, eax
mov dword [esp + 0x18], eax
je 0x5fdcf2
mov ecx, dword [esp + 0x30]
mov esi, 0xffffffff
mov dword [ecx + 0x88], eax
mov eax, dword [ecx + 0x8c]
mov dword [esp + 0xc], eax
mov ebx, eax
add eax, 1
sub eax, 1
jle 0x5fdc92
lea ecx, [esi + ebx]
mov edi, dword [esp + 0x18]
sar ecx, 1
lea eax, [ecx + ecx*2]
mov edx, dword [edi + eax*8 + 0xc]
mov eax, dword [edi + eax*8 + 8]
cmp edx, dword [esp + 0x40]
jl 0x5fdc87
jg 0x5fdcfc
cmp eax, dword [esp + 0x3c]
jae 0x5fdcfc
cmp edx, dword [esp + 0x40]
jg 0x5fdc89
jl 0x5fdc87
cmp eax, dword [esp + 0x3c]
ja 0x5fdc89
mov esi, ecx
mov eax, ebx
sub eax, esi
sub eax, 1
jg 0x5fdc4f
mov dword [esp + 0x14], 0xffffffff
cmp ebx, dword [esp + 0xc]
cmove ebx, dword [esp + 0x14]
test ebx, ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], ebx
js 0x5fddba
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 0x40]
lea ebp, [esi + esi*2]
mov eax, dword [esp + 0x3c]
lea esi, [ebx + ebp*8]
mov ecx, dword [esi + 8]
mov ebx, dword [esi + 0xc]
xor edx, ebx
xor eax, ecx
or edx, eax
je 0x5fdd03
cmp ebx, dword [esp + 0x40]
jg 0x5fdd7b
jl 0x5fdced
cmp ecx, dword [esp + 0x3c]
ja 0x5fdd7b
mov ecx, 0xffffffff
add esp, 0x1c
mov eax, ecx
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, ecx
jmp 0x5fdc79
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov edi, dword [esp + 0x38]
xor edi, edx
xor eax, dword [esp + 0x34]
or edi, eax
jne 0x5fdd26
mov ebx, dword [esi + 0x14]
cmp ebx, dword [esp + 0x48]
cmovle ebx, dword [esp + 0x48]
mov dword [esp + 0x48], ebx
mov edx, dword [esp + 0x48]
mov ebp, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
mov dword [esi + 0x14], edx
mov dword [esi + 4], ebp
mov ebp, dword [esi + 0x10]
mov edi, dword [esp + 0x44]
and ebp, 3
mov dword [esi], eax
shl edi, 2
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x40]
or ebp, edi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], ebx
mov dword [esi + 0x10], ebp
movzx ecx, byte [esi + 0x10]
movzx eax, byte [esp + 0x4c]
and al, 3
and cl, 0xfc
or cl, al
mov byte [esi + 0x10], cl
mov ecx, dword [esp + 0x14]
add esp, 0x1c
pop ebx
mov eax, ecx
pop esi
pop edi
pop ebp
ret
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
sub dword [esp + 0xc], ebx
lea edx, [ebx + ebx*2]
mov ecx, dword [esp + 0xc]
lea eax, [edi + edx*8]
lea ebp, [ecx + ecx*2]
mov dword [esp + 4], eax
add eax, 0x18
shl ebp, 3
mov dword [esp], eax
mov dword [esp + 8], ebp
call fcn.00a5b610
mov ecx, dword [esp + 0x30]
add dword [ecx + 0x8c], 1
jmp 0x5fdd26
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov esi, dword [esp + 0x30]
add ecx, 1
lea ebp, [ebx + ebx*2]
mov edx, dword [esp + 0x18]
test ebx, ebx
mov dword [esi + 0x8c], ecx
mov dword [esp + 0x14], ebx
lea esi, [edx + ebp*8]
je 0x5fdd26
mov edi, dword [esi - 0xc]
mov eax, dword [esi - 0x10]
cmp edi, dword [esp + 0x40]
jl 0x5fdd26
jg 0x5fde02
cmp eax, dword [esp + 0x3c]
jb 0x5fdd26
mov dword [esp + 8], 0x4c4
mov dword [esp + 4], 0xc7ea20
mov dword [esp], 0xc7ea28
call fcn.00a5b730