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

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [0xcff584]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor ebx, ebx
push esi
mov esi, ecx
mov dword [ebp - 8], ebx
push edi
mov dword [ebp - 8], ebx
cmp byte [esi + 0x84], bl
je 0xcafbeb
test byte [esi + 0x84], 1
je 0xcafbb3
mov edi, dword [esi + 8]
mov eax, dword [edi + 0x10]
cmp eax, 0x80
jae 0xcafba0
lea eax, [ebx + 1]
jmp 0xcafba9
push eax
call fcn.00c9f770
add esp, 4
mov ecx, dword [edi + 0x10]
lea edx, [eax + ecx + 1]
mov dword [ebp - 8], edx
mov eax, dword [esi + 0x84]
shr eax, 1
test al, 1
je 0xcafbeb
mov edi, dword [esi + 0xc]
mov eax, dword [edi + 0x10]
cmp eax, 0x80
jae 0xcafbd3
mov eax, 1
jmp 0xcafbdc
push eax
call fcn.00c9f770
add esp, 4
mov ecx, dword [edi + 0x10]
mov edx, dword [ebp - 8]
add ecx, eax
lea eax, [edx + ecx + 1]
mov dword [ebp - 8], eax
mov eax, dword [esi + 0x84]
test eax, 0x1fe00
je 0xcafc8b
shr eax, 9
test al, 1
je 0xcafc40
mov eax, dword [esi + 0x78]
cmp eax, ebx
jne 0xcafc13
mov ecx, dword [0xd070d4]
mov eax, dword [ecx + 0x78]
mov ecx, eax
call fcn.00ca8d60
mov edi, eax
cmp edi, 0x80
jae 0xcafc2b
mov eax, 1
jmp 0xcafc34
push edi
call fcn.00c9f770
add esp, 4
mov edx, dword [ebp - 8]
add eax, edi
lea eax, [edx + eax + 1]
mov dword [ebp - 8], eax
mov ecx, dword [esi + 0x84]
shr ecx, 0xa
test cl, 1
je 0xcafc8b
mov eax, dword [esi + 0x7c]
cmp eax, ebx
jne 0xcafc5e
mov edx, dword [0xd070d4]
mov eax, dword [edx + 0x7c]
mov ecx, eax
call fcn.00ca7b00
mov edi, eax
cmp edi, 0x80
jae 0xcafc76
mov eax, 1
jmp 0xcafc7f
push edi
call fcn.00c9f770
add esp, 4
mov ecx, dword [ebp - 8]
add eax, edi
lea edx, [ecx + eax + 1]
mov dword [ebp - 8], edx
mov eax, dword [esi + 0x14]
add dword [ebp - 8], eax
xor edi, edi
cmp eax, ebx
jle 0xcafcc5
mov eax, dword [esi + 0x10]
mov ebx, dword [eax + edi*4]
mov eax, dword [ebx + 0x10]
cmp eax, 0x80
jae 0xcafcae
mov eax, 1
jmp 0xcafcb7
push eax
call fcn.00c9f770
add esp, 4
mov ecx, dword [ebx + 0x10]
add ecx, eax
add dword [ebp - 8], ecx
inc edi
cmp edi, dword [esi + 0x14]
jl 0xcafc97
xor ebx, ebx
xor edi, edi
cmp dword [esi + 0x24], ebx
jle 0xcafd00
mov edi, edi
mov edx, dword [esi + 0x20]
mov eax, dword [edx + edi*4]
test eax, eax
jns 0xcafce1
mov eax, 0xa
jmp 0xcafcf8
cmp eax, 0x80
jae 0xcafcef
mov eax, 1
jmp 0xcafcf8
push eax
call fcn.00c9f770
add esp, 4
inc edi
add ebx, eax
cmp edi, dword [esi + 0x24]
jl 0xcafcd0
mov eax, dword [esi + 0x24]
add eax, ebx
add dword [ebp - 8], eax
xor ebx, ebx
xor edi, edi
cmp dword [esi + 0x30], ebx
jle 0xcafd41
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + edi*4]
test eax, eax
jns 0xcafd22
mov eax, 0xa
jmp 0xcafd39
cmp eax, 0x80
jae 0xcafd30
mov eax, 1
jmp 0xcafd39
push eax
call fcn.00c9f770
add esp, 4
inc edi
add ebx, eax
cmp edi, dword [esi + 0x30]
jl 0xcafd11
mov eax, dword [esi + 0x3c]
lea edx, [eax + ebx]
add edx, dword [esi + 0x30]
mov ebx, dword [ebp - 8]
add ebx, edx
xor edi, edi
mov dword [ebp - 8], ebx
test eax, eax
jle 0xcafd93
jmp 0xcafd60
mov eax, dword [esi + 0x38]
mov ecx, dword [eax + edi*4]
call fcn.00cadff0
mov ebx, eax
cmp ebx, 0x80
jae 0xcafd7c
mov eax, 1
jmp 0xcafd85
push ebx
call fcn.00c9f770
add esp, 4
add eax, ebx
add dword [ebp - 8], eax
inc edi
cmp edi, dword [esi + 0x3c]
jl 0xcafd60
mov ebx, dword [ebp - 8]
mov eax, dword [esi + 0x4c]
add ebx, eax
xor edi, edi
mov dword [ebp - 8], ebx
test eax, eax
jle 0xcafdd4
mov ecx, dword [esi + 0x48]
mov ecx, dword [ecx + edi*4]
call fcn.00cab510
mov ebx, eax
cmp ebx, 0x80
jae 0xcafdbd
mov eax, 1
jmp 0xcafdc6
push ebx
call fcn.00c9f770
add esp, 4
add eax, ebx
add dword [ebp - 8], eax
inc edi
cmp edi, dword [esi + 0x4c]
jl 0xcafda1
mov ebx, dword [ebp - 8]
mov eax, dword [esi + 0x5c]
add ebx, eax
xor edi, edi
mov dword [ebp - 8], ebx
test eax, eax
jle 0xcafe15
mov edx, dword [esi + 0x58]
mov ecx, dword [edx + edi*4]
call fcn.00cab6f0
mov ebx, eax
cmp ebx, 0x80
jae 0xcafdfe
mov eax, 1
jmp 0xcafe07
push ebx
call fcn.00c9f770
add esp, 4
add eax, ebx
add dword [ebp - 8], eax
inc edi
cmp edi, dword [esi + 0x5c]
jl 0xcafde2
mov ebx, dword [ebp - 8]
mov eax, dword [esi + 0x6c]
add ebx, eax
xor edi, edi
mov dword [ebp - 8], ebx
test eax, eax
jle 0xcafe56
mov eax, dword [esi + 0x68]
mov ecx, dword [eax + edi*4]
call fcn.00caa5b0
mov ebx, eax
cmp ebx, 0x80
jae 0xcafe3f
mov eax, 1
jmp 0xcafe48
push ebx
call fcn.00c9f770
add esp, 4
add eax, ebx
add dword [ebp - 8], eax
inc edi
cmp edi, dword [esi + 0x6c]
jl 0xcafe23
mov ebx, dword [ebp - 8]
mov ecx, dword [esi + 4]
lea eax, [esi + 4]
test ecx, ecx
je 0xcafe72
mov edx, dword [ecx]
cmp edx, dword [ecx + 4]
je 0xcafe72
push eax
call fcn.00c9b2b0
add esp, 4
add ebx, eax
mov ecx, dword [ebp - 4]
pop edi
mov dword [esi + 0x80], ebx
pop esi
mov eax, ebx
xor ecx, ebp
pop ebx
call fcn.00c62239
mov esp, ebp
pop ebp
ret