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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x7fac6b
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rdx, rcx
mov r9, qword [rcx + 0x18]
mov r9d, dword [r9 + 0x30]
bt r9d, 7
jae 0x7fa91d
lea r9, [rdx + 0x64]
movzx r9d, word [r9]
and r9d, 3
cmp r9d, 2
jne 0x7fa91d
movzx r9d, word [rcx + 0x5e]
jmp 0x7fa922
movzx r9d, word [rcx + 0x60]
mov r10, rdi
movzx r10d, word [r10 + 0x1c]
cmp r9d, r10d
jg 0x7fa932
mov r10d, r9d
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x88], rdi
mov dword [rsp + 0x90], esi
mov qword [rsp + 0x98], r8
mov dword [rsp + 0x28], r10d
mov r9d, dword [rcx + 0x68]
mov r11, qword [rcx + 0x80]
mov qword [rsp + 0x48], r11
imul r9d, r10d
mov ecx, 1
xor ebx, ebx
xor r12d, r12d
xor r13d, r13d
xor r15d, r15d
jmp 0x7fa9b1
mov r11, qword [rsp + 0x48]
mov esi, dword [rsp + 0x90]
mov rdi, qword [rsp + 0x88]
mov r8, qword [rsp + 0x98]
mov r10d, dword [rsp + 0x28]
mov r9d, ecx
mov r12d, eax
mov rax, qword [rsp + 0x70]
mov ecx, edx
mov rdx, qword [rsp + 0x58]
test cl, cl
je 0x7faaf5
lea r12d, [rbx + r9]
mov ecx, r12d
shr r12d, 0x1f
add r12d, ecx
test r10d, r10d
je 0x7fac65
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x30], r9d
mov dword [rsp + 0x34], ebx
sar r12d, 1
mov dword [rsp + 0x3c], r12d
mov rcx, rax
mov eax, r12d
cmp r10d, 0xffffffff
jne 0x7fa9fd
neg eax
xor edx, edx
jmp 0x7faa01
cdq
idiv r10d
test eax, eax
jle 0x7faa0c
inc edx
jmp 0x7fac0c
lea edx, [r12 + 1]
mov dword [rsp + 0x2c], edx
mov r8, rdi
mov word [r8 + 0x1c], dx
movsxd r8, eax
lea r8, [r8 + r8*4]
lea r8, [r11 + r8*8]
mov qword [rsp + 0x50], r8
mov ebx, dword [r8 + 8]
mov r8, qword [r8]
mov rax, rcx
mov rcx, r8
xor esi, esi
nop dword [rax]
call fcn.00732260
test eax, eax
jge 0x7faa88
mov edx, dword [rsp + 0x2c]
dec edx
mov r8, qword [rsp + 0x50]
mov r10, qword [r8 + 0x18]
mov r8, qword [r8 + 0x10]
movsxd rdx, edx
lea r10, [r10 + rdx*8]
mov r10, qword [r10]
lea rdx, [r8 + rdx*8]
add r10, qword [rdx]
mov edx, dword [rsp + 0x3c]
inc edx
mov r8d, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x30]
mov ebx, edx
mov r13d, dword [rsp + 0x38]
mov r15, r10
jmp 0x7faae0
jne 0x7faac3
mov edx, dword [rsp + 0x2c]
mov r8d, dword [rsp + 0x28]
cmp edx, r8d
jge 0x7faacc
mov r10, qword [rsp + 0x50]
dec edx
movsxd rdx, edx
shl rdx, 3
add rdx, qword [r10 + 0x18]
mov r15, qword [rdx]
mov ebx, dword [rsp + 0x3c]
inc ebx
mov eax, 0xffffffff
mov ecx, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x38]
jmp 0x7faae0
mov edx, dword [rsp + 0x2c]
mov r8d, dword [rsp + 0x28]
lea r13d, [rdx - 1]
mov ecx, dword [rsp + 0x3c]
mov ebx, dword [rsp + 0x34]
mov r15, qword [rsp + 0x40]
nop dword [rax]
test eax, eax
je 0x7faaee
cmp ebx, ecx
setl dl
jmp 0x7fa97e
xor edx, edx
jmp 0x7fa97e
test r10d, r10d
je 0x7fabf2
mov eax, r9d
mov rcx, rdx
cmp r10d, 0xffffffff
jne 0x7fab10
neg eax
xor edx, edx
jmp 0x7fab14
cdq
idiv r10d
test r12d, r12d
jne 0x7fab54
mov rcx, r8
movsxd rdx, eax
lea rdx, [rdx + rdx*4]
lea rdx, [r11 + rdx*8]
mov rbx, rdx
mov rdx, qword [rdx + 0x18]
movsxd rsi, r13d
lea rdx, [rdx + rsi*8]
mov rdx, qword [rdx]
mov qword [r8], rdx
add rcx, 8
mov rdx, qword [rbx + 0x10]
lea rdx, [rdx + rsi*8]
mov rdx, qword [rdx]
mov qword [rcx], rdx
mov ebx, eax
jmp 0x7fabe5
mov rdx, rcx
cmp dword [rcx + 0x68], eax
jg 0x7fab65
mov rcx, qword [rcx + 0x90]
jmp 0x7fab7e
movsxd rbx, eax
lea rbx, [rbx + rbx*4]
lea rbx, [r11 + rbx*8]
movsxd r9, r13d
shl r9, 3
add r9, qword [rbx + 0x18]
mov rcx, qword [r9]
mov rbx, rcx
sub rcx, r15
cmp r15, rbx
mov ebx, 0
cmovae rcx, rbx
test esi, esi
je 0x7fabae
shl rcx, 1
mov ebx, eax
movabs rax, 0xaaaaaaaaaaaaaaab
mov rsi, rdx
mul rcx
shr rdx, 1
jmp 0x7fabc3
mov ebx, eax
movabs rax, 0xaaaaaaaaaaaaaaab
mov rsi, rdx
mul rcx
shr rdx, 1
mov rcx, r8
add rdx, r15
mov qword [r8], rdx
add rcx, 8
lea edx, [r10 - 1]
movsxd rdx, edx
shl rdx, 3
add rdx, qword [rsi + 0x78]
mov rdx, qword [rdx]
mov qword [rcx], rdx
mov word [rdi + 0x1c], r10w
mov eax, ebx
add rsp, 0x60
pop rbp
ret
call fcn.00438060
inc edx
mov ebx, dword [rsp + 0x34]
mov esi, dword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
cmp edx, r10d
jge 0x7faa11
lea esi, [rax - 1]
movsxd rsi, esi
lea rsi, [rsi + rsi*4]
lea rsi, [r11 + rsi*8]
mov rsi, qword [rsi + 0x18]
lea r8d, [rdx - 1]
movsxd rbx, eax
lea rbx, [rbx + rbx*4]
lea rbx, [r11 + rbx*8]
mov rbx, qword [rbx + 0x18]
movsxd r8, r8d
lea rsi, [rsi + r8*8]
mov rsi, qword [rsi]
lea r8, [rbx + r8*8]
cmp qword [r8], rsi
je 0x7fabf7
mov ebx, dword [rsp + 0x34]
mov esi, dword [rsp + 0x90]
mov r8, qword [rsp + 0x98]
jmp 0x7faa11
call fcn.00438060
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x30], r8
call fcn.0046aaa0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov esi, dword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp fcn.007fa8e0