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

Disassembly:
pushal
lea edi, [ebx + ebp]
popal
pushfd
push cx
pushfd
push word [esp + 2]
push dword [esp + 1]
push dx
push dword [esp + 6]
mov byte [esp + 0xf], bh
jmp 0xca329c
pop dword [esp + 9]
pop word [esp + 0x10]
lea esp, [esp + 0xf]
jmp 0xca32bb
pushal
xchg ebx, edi
popal
push si
pushal
lea esp, [esp + 5]
pop word [esp + 0x18]
pushfd
jmp 0xca3260
lea esp, [esp + 2]
lea esp, [esp + 0x14]
lea esp, [esp + 4]
jmp 0xca327e
lea esp, [esp + 2]
lea esp, [esp + 8]
push ebp
mov ebp, esp
sub esp, 0x18
jmp 0xca33ba
push esi
mov esi, dword [eax + 0x78]
push esp
push word [esp + 1]
push di
jmp 0xca35c7
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x3c]
and dword [ebp - 0xc], 0
add eax, ecx
mov edx, 0x10b
cmp word [eax + 0x18], dx
je 0xca339d
xor eax, eax
jmp 0xca35ec
mov word [esp + 5], si
pop word [esp + 3]
mov word [esp + 2], dx
push word [esp + 1]
jmp 0xca3ae4
leave
ret 8
cmp dword [ebp - 4], ebx
je 0xca382b
test eax, eax
jle 0xca37fd
lea ebx, [edi - 1]
jmp 0xca3852
stc
push sp
mov byte [esp], cl
mov word [esp], bp
lea esp, [esp + 2]
jmp 0xca37dd
mov dword [esp], edi
mov dword [esp], ebp
push dword [esp + 1]
mov word [esp + 1], sp
mov word [esp + 4], si
mov byte [esp + 2], dl
jmp 0xca390f
pop esi
jmp 0xca35ec
and dword [ebp - 4], 0
pushal
mov byte [esp + 0x1b], dl
pop dword [esp + 2]
add eax, ecx
pushfd
pop word [esp]
push cx
mov byte [esp], bl
mov dword [esp], ecx
lea esp, [esp + 0x20]
push ebx
mov ebx, dword [esi + 0x18]
push edi
mov edi, dword [esi + 0x24]
push edi
mov edi, ebp
lea edi, [edi - 0x10]
mov dword [edi], eax
pop edi
mov eax, dword [esi + 0x1c]
add edi, ecx
clc
sub esp, 0x17
mov word [esp + 0xf], sp
pop dword [esp + 0xb]
lea esp, [esp + 3]
add eax, ecx
push esp
lea esp, [esp + 0x14]
dec ebx
push eax
mov eax, ebp
lea eax, [eax - 8]
mov dword [eax], edi
pop eax
mov dword [ebp - 0x14], eax
js 0xca363d
push esi
mov esi, ebp
lea esi, [esi - 4]
mov eax, dword [esi]
pop esi
add eax, ebx
cdq
sub eax, edx
mov edi, eax
mov eax, dword [ebp - 0x10]
sar edi, 1
mov edx, dword [eax + edi*4]
add edx, dword [ebp + 8]
push edi
mov edi, ebp
lea edi, [edi + 0xc]
mov eax, dword [edi]
pop edi
call fcn.00c97fd9
test eax, eax
jne 0xca3617
push edi
pushal
mov di, word [esp]
lea ecx, [edi + edi]
mov ecx, ebx
mov dl, byte [esp]
lea esi, [esp + edi]
xchg ch, cl
mov dl, cl
xchg cl, al
mov dword [esp], ebp
pushfd
jmp 0xca365c
clc
sub esp, 5
lea esp, [esp + 1]
xor eax, eax
pushal
pop dword [esp + 0xe]
mov byte [esp + 0xf], al
mov byte [esp + 0xb], al
pop word [esp + 0x14]
pop dword [esp + 0xe]
mov dword [esp + 0xd], edi
mov dword [esp + 8], eax
pop word [esp + 0xd]
lea esp, [esp + 0x18]
jmp 0xca3683
pop edi
pop ebx
jmp 0xca3683
test eax, eax
jne 0xca3807
je 0xca382b
xor eax, 0xf63352a1
xor esi, esi
pushfd
mov word [esp + 1], cx
lea esp, [esp + 4]
test ebx, ebx
jl 0xca3807
jmp 0xca38de
inc edi
mov dword [ebp - 4], edi
jmp 0xca3852
mov eax, dword [ebp - 0xc]
jmp 0xca37ad
push edx
mov edx, ebp
lea edx, [edx - 8]
mov edi, dword [edx]
pop edx
jmp 0xca363d
cmp dword [ebp - 4], ebx
jle 0xca370e
jmp 0xca382b
test eax, eax
jne 0xca37ad
jmp 0xca3852
call 0xc980aa
test eax, eax
je 0xca38b6
inc esi
cmp esi, ebx
jle 0xca37ed
jmp 0xca3807
movzx eax, word [edi + esi*2]
push edx
mov edx, ebp
lea edx, [edx - 0x14]
mov ecx, dword [edx]
pop edx
mov eax, dword [ecx + eax*4]
add eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
jmp 0xca3807
mov eax, dword [ebp - 0x10]
push esi
mov esi, esi
lea esi, [esi*4]
lea esi, [eax + esi]
mov edx, dword [esi]
pop esi
add edx, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
jmp 0xca388c
lea esp, [esp + 4]
lea esp, [esp + 4]
popal
lea edi, [edi - 8]
mov eax, dword [edi]
pop edi
movzx eax, word [eax + edi*2]
push edx
mov edx, ebp
lea edx, [edx - 0x14]
mov ecx, dword [edx]
pop edx
mov eax, dword [ecx + eax*4]
add eax, dword [ebp + 8]
mov dword [ebp - 0xc], eax
cmp eax, esi
jb 0xca3872
push esi
mov esi, ebp
lea esi, [esi - 0x18]
mov ecx, dword [esi]
pop esi
sub esp, 3
lea esp, [esp + 3]
add ecx, esi
pushfd
push word [esp + 2]
push dword [esp + 4]
push word [esp + 7]
mov word [esp + 5], di
mov byte [esp], al
mov word [esp + 6], sp
pop word [esp + 1]
lea esp, [esp + 2]
lea esp, [esp + 8]
sub esp, 0x14
lea esp, [esp + 0xb]
lea esp, [esp + 1]
push word [esp + 6]
lea esp, [esp + 2]
cmp eax, ecx
pushfd
pop word [esp]
push di
mov dword [esp], edi
mov word [esp + 1], dx
lea esp, [esp + 0xc]
jb 0xca37d4
jae 0xca3872
mov dword [esp + 8], ecx
pushal
lea esp, [esp + 0x20]
popal
lea ebp, [ebp + 0x3c]
mov eax, dword [ebp]
pop ebp
jmp 0xca3a5d
sub esp, 0x1d
push dword [esp + 0x13]
add esp, 0xe
lea esp, [esp + 3]
add eax, ecx
pushfd
lea esp, [esp + 0x14]
ret
push dword [esp + 7]
lea esp, [esp + 9]
lea esp, [esp + 3]
add esi, ecx
pushal
mov word [esp + 7], dx
lea esp, [esp + 0x1a]
mov word [esp + 3], si
push word [esp + 2]
lea esp, [esp + 8]
mov eax, dword [eax + 0x7c]
mov dword [ebp - 0x18], eax
je 0xca3768
push edi
pushal
xchg edx, ebp
lea ecx, [ecx*4]
not ecx
mov dword [esp], esi
pushal
pop dword [esp + 0xd]
push word [esp + 0x18]
lea esp, [esp + 2]
lea esp, [esp + 0x1c]
popal
lea edi, [edi + 0x20]
mov eax, dword [edi]
pop edi
test eax, eax
jne 0xca36ad
je 0xca3768
inc esp
lds edx, [ebp + 0x3c]
iretd