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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rdi
sub rsp, 0x70
mov rdi, r8
mov rbx, rdx
mov rbp, rcx
cmp r8, 0x20
jb 0x14008c506
test dil, 1
jne 0x14008c506
lea rax, [r8*4]
mov qword [rsp + 0x68], rsi
mov rsi, r8
shr rsi, 1
mov qword [rsp + 0x50], rax
add rax, rbp
lea rcx, [rdx + rsi*4]
mov r9, rsi
mov rdx, rsi
mov qword [rsp + 0x38], rcx
mov r8, rcx
mov rcx, rbx
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rax
call fcn.14008c9d0
lea rcx, [rdi + rdi]
mov dword [rsp + 0x30], eax
test rcx, rcx
je 0x14008c20f
lea r8, [rcx*4]
mov rcx, qword [rsp + 0xa8]
xor edx, edx
call fcn.1402a04b0
mov eax, dword [rsp + 0x30]
mov qword [rsp + 0x20], rsi
mov r8, rsi
mov rcx, rbp
test eax, eax
jle 0x14008c228
mov r9, qword [rsp + 0x38]
mov rdx, rbx
jmp 0x14008c230
mov rdx, qword [rsp + 0x38]
mov r9, rbx
call fcn.1400849e0
mov rax, qword [rsp + 0xa8]
mov r8, rsi
lea rbx, [rax + rdi*4]
mov rdx, rbp
mov rcx, rax
mov r9, rbx
call fcn.14008c170
mov rdx, qword [rsp + 0x98]
mov r9, rbx
mov r8, rsi
mov rcx, rbp
call fcn.14008c170
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
mov r9, rbx
mov r8, rsi
call fcn.14008c170
mov rax, rdi
mov rcx, rdi
and eax, 7
mov r10d, 0
sub rcx, rax
mov ebx, r10d
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], ebx
je 0x14008c31d
mov rcx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x38]
sub r8, rcx
mov rax, rbp
mov rsi, rcx
add r8, qword [rsp + 0xa8]
sub rax, rcx
mov ebp, ebx
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x50], rax
lea rcx, [r8 + rsi]
lea rdx, [rax + rsi]
mov r9d, ebx
mov r8, rsi
call fcn.14001b1d0
mov r8, qword [rsp + 0x30]
add rbp, 8
add rsi, 0x20
mov ebx, eax
mov rax, qword [rsp + 0x50]
cmp rbp, rdi
jne 0x14008c2d0
mov rdi, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x38]
mov dword [rsp + 0x30], ebx
xor r10d, r10d
cmp rcx, rdi
je 0x14008c3a5
mov rsi, qword [rsp + 0x48]
lea rax, [rdi*4]
lea r9, [rcx*4]
sub rax, rbp
add r9, rbp
sub rsi, rbp
add rax, qword [rsp + 0xa8]
mov r11, rdi
mov rbp, rax
sub r11, rcx
nop word [rax + rax]
mov r8d, dword [rsi + r9]
mov edx, r10d
mov eax, r10d
add r8d, dword [r9]
lea r9, [r9 + 4]
cmp r8d, dword [r9 - 4]
setb dl
add r8d, ebx
cmp r8d, ebx
mov dword [r9 + rbp - 4], r8d
setb al
mov ebx, eax
or ebx, edx
dec r11
jne 0x14008c360
mov rsi, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x38]
mov dword [rsp + 0x30], ebx
mov r9d, r10d
test rcx, rcx
je 0x14008c420
mov rbx, rdi
mov rdi, qword [rsp + 0x38]
lea rax, [rsi*4]
sub rbx, rsi
add rax, rbp
shl rbx, 2
mov rsi, rax
sub rbx, rbp
mov rbp, r10
add rbx, qword [rsp + 0xa8]
nop dword [rax + rax]
lea rdx, [rbx + rsi]
mov r8d, r9d
mov rcx, rsi
call fcn.14001b0a0
add rbp, 8
add rsi, 0x20
mov r9d, eax
cmp rbp, rdi
jne 0x14008c3e0
mov rdi, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x40]
mov ebx, dword [rsp + 0x30]
mov rbp, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x38]
xor r10d, r10d
cmp rcx, rdi
je 0x14008c489
lea rax, [rcx + rsi]
mov rbx, rdi
sub rbx, rsi
lea r11, [rax*4]
mov rsi, rdi
shl rbx, 2
add r11, rbp
sub rbx, rbp
add rbx, qword [rsp + 0xa8]
sub rsi, rcx
nop
mov r8d, dword [r11 + rbx]
mov edx, r10d
mov eax, r10d
add r8d, dword [r11]
lea r11, [r11 + 4]
cmp r8d, dword [r11 - 4]
setb dl
add r8d, r9d
cmp r8d, r9d
mov dword [r11 - 4], r8d
setb al
mov r9d, eax
or r9d, edx
dec rsi
jne 0x14008c450
mov rsi, qword [rsp + 0x40]
mov ebx, dword [rsp + 0x30]
mov edx, r10d
lea rax, [rsi + rdi]
lea r8, [rax*4]
mov eax, dword [r8 + rbp]
lea ecx, [rax + rbx]
cmp ecx, eax
setb dl
add ecx, r9d
cmp ecx, r9d
mov dword [r8 + rbp], ecx
setb r10b
or r10d, edx
je 0x14008c4d8
mov ecx, 1
cmp rcx, rsi
je 0x14008c4d8
lea rax, [rbp + 4]
add rax, r8
inc dword [rax]
jne 0x14008c4d8
inc rcx
add rax, 4
cmp rcx, rsi
jne 0x14008c4c8
mov r8, qword [rsp + 0xa8]
lea rdx, [rdi + rdi]
lea rcx, [rsi*4]
sub rdx, rsi
add rcx, rbp
mov r9, rdi
mov rsi, qword [rsp + 0x68]
add rsp, 0x70
pop rdi
pop rbp
pop rbx
jmp fcn.140084720
cmp r8, 6
jne 0x14008c518
add rsp, 0x70
pop rdi
pop rbp
pop rbx
jmp 0x140085250
cmp r8, 8
jne 0x14008c52a
add rsp, 0x70
pop rdi
pop rbp
pop rbx
jmp 0x140085ca0
cmp r8, 0x10
jne 0x14008c53c
add rsp, 0x70
pop rdi
pop rbp
pop rbx
jmp 0x140086ef0
add rsp, 0x70
pop rdi
pop rbp
pop rbx
jmp 0x14008d0d0