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

Disassembly:
push ebx
push esi
push edi
push ebp
sub esp, 0x60
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov dword [esp + 8], eax
cmp dword [ebx + 4], 0
je 0x63ead3
xor eax, eax
add esp, 0x60
pop ebp
pop edi
pop esi
pop ebx
ret
mov eax, ebx
mov dword [esp], ebx
add eax, dword [0xa0d8b0]
mov esi, ebx
mov dword [esp], eax
mov esi, dword [esi]
cmp esi, dword [esi]
jne 0x63eae3
mov eax, dword [esp + 0x7c]
mov edx, esi
mov dword [esp + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x10], eax
add edx, dword [0xa0d8b0]
and dword [esp + 0x10], 1
and dword [esp + 4], 0xff00
sar dword [esp + 4], 8
cmp dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x800
jne 0x63eb2a
or dword [esp + 0xc], 0x8010
movzx eax, byte [ebx + 0x20]
and eax, 7
mov ebp, eax
mov ecx, eax
cmp ebp, 5
ja case.0x63eb3e.1
jmp dword [ebp*4 + 0x6dccb8]
cmp byte [edx + 0xa], 0
je 0x63eb67
movzx eax, byte [esp + 4]
mov edi, dword [esp]
movzx ecx, byte [edx + 0xb]
add edi, 0xc
push edi
push eax
mov eax, dword [edx]
push ecx
mov ebp, dword [eax]
push eax
call dword [ebp + 0x3c]
jmp 0x63eb7c
mov eax, dword [esp]
movzx ecx, byte [esp + 4]
add eax, 0xc
push eax
mov eax, dword [edx]
mov edi, dword [eax]
push ecx
push eax
call dword [edi + 0x3c]
test eax, eax
jl 0x63ebe3
cmp esi, ebx
jne 0x63eba0
mov eax, dword [esp]
mov ecx, dword [esp]
mov eax, dword [eax + 0xc]
add ecx, 0x10
mov ebp, dword [eax]
push dword [esp + 0xc]
push 0
push ecx
push eax
call dword [ebp + 0x24]
jmp 0x63ebe3
movsx eax, word [ebx + 0x1c]
mov edx, dword [esp]
push dword [esp + 0xc]
mov dword [esp + 0x18], eax
add edx, 0x10
movsx eax, word [ebx + 0x1e]
mov dword [esp + 0x1c], eax
movsx eax, word [ebx + 0x1c]
add eax, dword [ebx + 0xc]
mov dword [esp + 0x20], eax
movsx eax, word [ebx + 0x1e]
add eax, dword [ebx + 0x10]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0xc]
push edx
mov esi, dword [eax]
push eax
call dword [esi + 0x24]
test eax, eax
jl 0x63ec08
mov eax, dword [esp + 0x7c]
and eax, 2
je 0x63ebf4
or byte [ebx + 0x22], 2
cmp dword [esp + 0x10], 0
je 0x63edd0
or byte [ebx + 0x22], 4
jmp 0x63edd0
xor eax, eax
add esp, 0x60
pop ebp
pop edi
pop esi
pop ebx
ret
cmp eax, 5
jne 0x63ec57
cmp byte [edx + 0xa], 0
je 0x63ec40
movzx eax, byte [esp + 4]
movzx ecx, byte [edx + 0xb]
lea edi, [esp + 0x24]
push edi
push eax
mov eax, dword [edx]
push ecx
mov ebp, dword [eax]
push eax
call dword [ebp + 0x3c]
mov edi, eax
jmp 0x63ec62
movzx ecx, byte [esp + 4]
lea eax, [esp + 0x24]
push eax
mov eax, dword [edx]
mov edi, dword [eax]
push ecx
push eax
call dword [edi + 0x3c]
mov edi, eax
jmp 0x63ec62
mov eax, dword [0x7897b0]
xor edi, edi
mov dword [esp + 0x24], eax
test edi, edi
jl 0x63edad
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x28]
mov ebp, dword [eax]
push ecx
push eax
call dword [ebp + 0x20]
cmp esi, ebx
jne 0x63eca0
mov eax, dword [esp]
mov edx, dword [esp + 0x28]
add eax, 0xc
mov edi, dword [esp + 0x40]
push eax
mov eax, dword [esp + 0x48]
push edx
push eax
mov eax, dword [0x7897a8]
push edi
mov ebp, dword [eax]
push eax
call dword [ebp + 0x6c]
jmp 0x63ecbf
mov eax, dword [esp]
mov ecx, dword [esp + 0x28]
add eax, 0xc
mov edx, dword [ebx + 0xc]
push eax
mov eax, dword [ebx + 0x10]
push ecx
push eax
mov eax, dword [0x7897a8]
push edx
mov edi, dword [eax]
push eax
call dword [edi + 0x6c]
mov edi, eax
test edi, edi
jl 0x63ed97
mov ebp, dword [esp + 0x7c]
and ebp, 2
je 0x63ed51
cmp esi, ebx
jne 0x63ecf5
mov eax, dword [esp]
mov ecx, dword [esp + 0x24]
mov eax, dword [eax + 0xc]
push 0
push eax
mov eax, dword [0x7897a8]
mov edi, dword [eax]
push 0
push 0
push ecx
push eax
call dword [edi + 0x70]
jmp 0x63ed4f
movsx eax, word [ebx + 0x1c]
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
lea edi, [esp + 0x58]
mov edx, dword [esp + 0x24]
mov dword [esp + 0x48], eax
push edi
movsx eax, word [ebx + 0x1e]
mov dword [esp + 0x50], eax
movsx eax, word [ebx + 0x1c]
add eax, dword [ebx + 0xc]
mov dword [esp + 0x54], eax
movsx eax, word [ebx + 0x1e]
add eax, dword [ebx + 0x10]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 4]
mov eax, dword [eax + 0xc]
push eax
lea eax, [esp + 0x50]
push 1
push eax
mov eax, dword [0x7897a8]
mov esi, dword [eax]
push edx
push eax
call dword [esi + 0x70]
mov edi, eax
test edi, edi
jl 0x63ed87
mov eax, dword [esp]
mov ecx, dword [esp]
mov eax, dword [eax + 0xc]
add ecx, 0x10
mov edi, dword [eax]
push dword [esp + 0xc]
push 0
push ecx
push eax
call dword [edi + 0x24]
mov edi, eax
test edi, edi
jl 0x63ed87
test ebp, ebp
je 0x63ed7c
or byte [ebx + 0x22], 2
cmp dword [esp + 0x10], 0
je 0x63ed87
or byte [ebx + 0x22], 4
test edi, edi
jge 0x63ed97
mov eax, dword [esp]
mov eax, dword [eax + 0xc]
mov ebp, dword [eax]
push eax
call dword [ebp + 8]
movzx eax, byte [ebx + 0x20]
and eax, 7
cmp eax, 5
jne 0x63edad
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
push eax
call dword [esi + 8]
test edi, edi
jge 0x63edd0
xor eax, eax
add esp, 0x60
pop ebp
pop edi
pop esi
pop ebx
ret
xor eax, eax
add esp, 0x60
pop ebp
pop edi
pop esi
pop ebx
ret
mov eax, dword [esp]
mov eax, dword [eax + 0x14]
mov dword [ebx + 4], eax
mov eax, dword [ebx + 0xc]
mov dword [ebx + 0x28], eax
mov eax, dword [ebx + 0x10]
mov dword [ebx + 0x2c], eax
mov eax, dword [ebx + 0xc]
movzx ecx, byte [esp + 4]
sar eax, cl
mov dword [ebx + 0xc], eax
mov eax, dword [ebx + 0x10]
sar eax, cl
mov dword [ebx + 0x10], eax
cmp dword [ebx + 0xc], 0
jne 0x63ee07
mov dword [ebx + 0xc], 1
cmp dword [ebx + 0x10], 0
jne 0x63ee14
mov dword [ebx + 0x10], 1
mov eax, dword [esp]
mov eax, dword [eax + 0x10]
mov dword [ebx + 0x18], eax
mov eax, dword [esp]
movzx edx, byte [esp + 4]
mov dword [eax + 0x18], edx
mov ecx, dword [ebx + 4]
mov eax, dword [esp + 8]
mov dword [eax], ecx
mov eax, 1
add esp, 0x60
pop ebp
pop edi
pop esi
pop ebx
ret