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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
mov rax, qword [rdx + 0x148]
mov r10d, dword [rdx + 0x34]
mov edi, dword [rdx + 0x38]
mov rbp, qword [rcx]
mov qword [rcx + 0xb0], rax
mov eax, dword [rdx + 0x90]
mov rbx, rcx
mov r14, rdx
movzx r12d, word [rdx + 0x130]
mov qword [rdx + 0x148], 0
add edi, r10d
test r10d, r10d
mov dword [rsp + 0x4c], eax
jne 0x1401686fd
test edi, edi
setg al
cmp al, 1
sbb edi, 0xffffffff
mov eax, dword [rbx + 0x90]
lea rdx, [rsp + 0x4c]
mov rcx, rbx
mov dword [rsp + 0x20], r10d
mov esi, dword [r14 + 0x3c]
lea eax, [rax + rax*2]
shl eax, 3
sub esi, eax
movsxd r13, eax
add r13, qword [rbx + 0x88]
call fcn.140159040
and esi, 0xfffffff8
xor eax, eax
cmp byte [r14 + 0x20], 0
mov r10d, dword [rsp + 0x20]
movsxd rsi, esi
je 0x140168747
cmp byte [r14 + 0x21], 0
setne al
shl eax, 5
mov edx, eax
movzx eax, byte [rbx + 0xc8]
and eax, 0xffffffdf
or eax, edx
mov byte [rbx + 0xc8], al
movzx edx, byte [r14 + 0x133]
test dl, dl
je 0x140168798
mov ecx, 0xa
cmp edi, ecx
cmovl edi, ecx
and edx, 3
and eax, 0xfffffff3
lea ecx, [rdx*4]
not edx
and edx, 3
or eax, ecx
shl edx, 2
mov byte [rbx + 0xc8], al
mov word [rbx + 0xc0], dx
and byte [rbx + 0xc8], 0xfc
movsxd r9, edi
imul r9, r9, 0x38
cmp rsi, r9
jl 0x140168980
sub rsi, r9
xor edx, edx
lea rax, [r13 + rsi]
movsx r8, r12w
mov qword [rbx + 0x68], rax
imul r8, r8, 0x38
cmp r8, rsi
jg 0x140168970
sub rsi, r8
lea rcx, [r13 + rsi]
movsxd r15, dword [rsp + 0x4c]
mov qword [rbx + 0x80], rcx
shl r15, 3
cmp r15, rsi
jg 0x140168960
sub rsi, r15
lea r11, [r13 + rsi]
movsxd r14, r10d
mov qword [rbx + 0x70], r11
shl r14, 3
cmp r14, rsi
jg 0x140168950
sub rsi, r14
add rsi, r13
test rdx, rdx
mov qword [rbx + 0x78], rsi
jne 0x1401688b0
cmp byte [rbp + 0x67], 0
jne 0x1401688f4
test r12w, r12w
mov dword [rbx + 0x28], r10d
mov word [rbx + 0x20], r12w
jle 0x140168867
movsx r12d, r12w
imul r12, r12, 0x38
add r12, rcx
nop word [rax + rax]
mov r8d, 1
mov qword [rcx + 0x18], rbp
add rcx, 0x38
mov word [rcx - 0x24], r8w
mov dword [rcx - 0x18], 0
cmp rcx, r12
jne 0x140168848
test edi, edi
mov dword [rbx + 0x24], edi
jle 0x14016889a
mov edi, edi
imul rdi, rdi, 0x38
add rdi, rax
nop word [rax + rax]
xor edx, edx
mov qword [rax + 0x18], rbp
add rax, 0x38
mov word [rax - 0x24], dx
mov dword [rax - 0x18], 0
cmp rdi, rax
jne 0x140168880
mov r8, r14
xor edx, edx
mov rcx, rsi
call sub.msvcrt.dll_memset
jmp 0x140168904
mov rcx, rbp
mov dword [rsp + 0x3c], r10d
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], rdx
call fcn.140168520
mov rdx, qword [rsp + 0x20]
mov qword [rbx + 0x100], rax
cmp byte [rbp + 0x67], 0
mov r11, rax
mov r9, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r10d, dword [rsp + 0x3c]
je 0x140168990
xor r9d, r9d
mov qword [rbx + 0x24], 0
mov word [rbx + 0x20], r9w
mov eax, 0xffffff02
mov byte [rbx + 0xc7], 1
mov word [rbx + 0xc4], ax
movabs rax, 0xffffffff00000001
mov qword [rbx + 0x2c], rax
mov qword [rbx + 0x34], 0
mov qword [rbx + 0x3c], 0
mov qword [rbx + 0x50], 0
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
add rdx, r14
xor esi, esi
jmp 0x140168811
add rdx, r15
xor r11d, r11d
jmp 0x1401687f7
add rdx, r8
xor ecx, ecx
jmp 0x1401687d6
mov rdx, r9
xor eax, eax
jmp 0x1401687b9
mov rax, qword [rbx + 0x68]
test rax, rax
je 0x1401689d0
mov rcx, qword [rbx + 0x80]
mov qword [rbx + 0x68], rax
test rcx, rcx
je 0x140168a10
mov r8, qword [rbx + 0x70]
mov qword [rbx + 0x80], rcx
test r8, r8
je 0x1401689f8
mov rsi, qword [rbx + 0x78]
mov qword [rbx + 0x70], r8
test rsi, rsi
je 0x1401689e0
mov qword [rbx + 0x78], rsi
jmp 0x140168828
cmp r9, rdx
jg 0x140168999
sub rdx, r9
lea rax, [r11 + rdx]
jmp 0x140168999
mov r8, rdx
sub r8, r14
add r11, r8
cmp r14, rdx
cmovle rsi, r11
jmp 0x1401689c6
cmp r15, rdx
jg 0x1401689b9
sub rdx, r15
lea r8, [r11 + rdx]
jmp 0x1401689b9
cmp r8, rdx
jg 0x1401689a9
sub rdx, r8
lea rcx, [r11 + rdx]
jmp 0x1401689a9