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

Disassembly:
push r14
push r15
push rbp
sub rsp, 0xf0
mov r14, r9
mov rbp, rcx
cmp qword [rsp + 0x130], 0x3e4
jae 0x1401aae74
mov rax, 0xffffffffffffffd4
add rsp, 0xf0
pop rbp
pop r15
pop r14
ret
xor eax, eax
lea rcx, [r14 + 0x2e4]
mov dword [rsp + 0xd4], eax
lea r9, [rsp + 0xd4]
mov dword [r9 + 4], eax
mov rax, rsp
mov r15d, dword [rsp + 0x138]
lea r10, [rsp + 0xd8]
lea r11, [r14 + 0x80]
mov qword [rax + 0x28], rdx
mov edx, 0x100
mov qword [rax + 0x30], r8
mov r8, r14
mov qword [rax + 0x20], r10
mov qword [rax + 0x38], r11
mov qword [rax + 0x40], 0x164
mov dword [rax + 0x48], r15d
call fcn.14016b3e0
cmp rax, 0xffffffffffffff88
ja 0x1401ab6c9
mov edx, dword [rbp]
mov dword [rsp + 0x50], edx
movzx edx, dl
inc edx
mov ecx, dword [rsp + 0xd8]
cmp ecx, edx
ja 0x1401aae60
mov byte [rsp + 0x51], 0
mov byte [rsp + 0x52], cl
mov edx, dword [rsp + 0x50]
mov dword [rbp], edx
mov r11d, dword [rsp + 0xd8]
xor r15d, r15d
mov edx, dword [rsp + 0xd4]
lea r10d, [r11 + 1]
test r11d, r11d
jl 0x1401aaf7d
mov r8d, r10d
mov ecx, 1
xor r9d, r9d
shr r8d, 1
je 0x1401aaf6c
mov ecx, r8d
mov qword [rsp + 0x88], r13
mov r13d, dword [r14 + r9*8]
mov dword [r14 + r9*8 + 0x40], r15d
add r13d, r15d
mov r15d, dword [r14 + r9*8 + 4]
mov dword [r14 + r9*8 + 0x44], r13d
inc r9
add r15d, r13d
cmp r9, rcx
jb 0x1401aaf3e
mov r13, qword [rsp + 0x88]
lea ecx, [r9 + r9 + 1]
lea r9d, [rcx - 1]
cmp r9d, r10d
jae 0x1401aaf7d
movsxd rcx, ecx
mov dword [r14 + rcx*4 + 0x3c], r15d
xor ecx, ecx
lea r9d, [rdx - 3]
xor r15d, r15d
test r9d, r9d
jle 0x1401ab065
mov r9d, edx
shr r9d, 2
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x88], r13
movzx r13d, byte [r14 + r15*4 + 0x2e4]
lea edi, [rcx*4]
mov r12d, dword [r14 + r13*4 + 0x40]
mov byte [r12 + r14 + 0x1e4], dil
lea edi, [rcx*4 + 1]
inc r12d
mov dword [r14 + r13*4 + 0x40], r12d
movzx r13d, byte [r14 + r15*4 + 0x2e5]
mov r12d, dword [r14 + r13*4 + 0x40]
mov byte [r12 + r14 + 0x1e4], dil
lea edi, [rcx*4 + 2]
inc r12d
mov dword [r14 + r13*4 + 0x40], r12d
movzx r13d, byte [r14 + r15*4 + 0x2e6]
mov r12d, dword [r14 + r13*4 + 0x40]
mov byte [r12 + r14 + 0x1e4], dil
lea edi, [rcx*4 + 3]
inc r12d
inc ecx
mov dword [r14 + r13*4 + 0x40], r12d
movzx r13d, byte [r14 + r15*4 + 0x2e7]
inc r15
mov r12d, dword [r14 + r13*4 + 0x40]
mov byte [r12 + r14 + 0x1e4], dil
inc r12d
mov dword [r14 + r13*4 + 0x40], r12d
cmp ecx, r9d
jb 0x1401aafab
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
shl ecx, 2
cmp ecx, edx
jge 0x1401ab155
sub edx, ecx
xor r9d, r9d
mov r15d, edx
mov r8d, 1
shr r15d, 1
je 0x1401ab120
movsxd r8, ecx
mov qword [rsp + 0x68], rbx
add r8, r14
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x88], r13
nop dword [rax]
movsxd r9, r9d
lea ebx, [rcx + r9*2]
movzx edi, byte [r8 + r9*2 + 0x2e4]
movzx r13d, byte [r8 + r9*2 + 0x2e5]
inc r9d
mov esi, dword [r14 + rdi*4 + 0x40]
mov byte [rsi + r14 + 0x1e4], bl
inc ebx
inc esi
mov dword [r14 + rdi*4 + 0x40], esi
mov r12d, dword [r14 + r13*4 + 0x40]
mov byte [r12 + r14 + 0x1e4], bl
inc r12d
mov dword [r14 + r13*4 + 0x40], r12d
cmp r9d, r15d
jb 0x1401ab0b0
mov rbx, qword [rsp + 0x68]
lea r8d, [r9 + r9 + 1]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
lea r9d, [r8 - 1]
cmp r9d, edx
jae 0x1401ab155
movsxd r9, ecx
movsxd r8, r8d
add r9, r14
lea ecx, [r8 + rcx - 1]
movzx edx, byte [r8 + r9 + 0x2e3]
mov r15d, dword [r14 + rdx*4 + 0x40]
mov byte [r15 + r14 + 0x1e4], cl
inc r15d
mov dword [r14 + rdx*4 + 0x40], r15d
movsxd r9, dword [r14]
xor edx, edx
mov ecx, 1
cmp r10d, 1
jbe 0x1401ab6c9
mov dword [rsp + 0xc8], r10d
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rdi
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x88], r13
mov edi, 1
movzx ebx, r11b
mov esi, dword [r14 + rcx*4]
shl edi, cl
sar edi, 1
cmp edi, 1
je 0x1401ab6d6
cmp edi, 2
je 0x1401ab5a5
cmp edi, 4
jne 0x1401ab3db
test esi, esi
jle 0x1401ab79c
cmp esi, 6
jg 0x1401ab1d9
movsxd rax, esi
jmp 0x1401ab2f4
lea r10, [rbp + rdx*2]
mov qword [rsp + 0x58], r10
lea r10, [r10 + 4]
lea r12, [r14 + r9 + 0x1e4]
sub r10, r12
lea rax, [r14 + r9]
mov qword [rsp + 0x50], rax
movsxd rax, esi
cmp r10, rax
jge 0x1401ab217
neg r10
lea r12, [rax*8]
cmp r10, r12
jl 0x1401ab2f4
mov r8d, esi
xor r12d, r12d
mov r15d, 1
xor r13d, r13d
shr r8d, 1
je 0x1401ab2b5
mov r15d, ebx
movabs r10, 0x1000100010001
mov dword [rsp + 0x98], r11d
mov qword [rsp + 0xa0], rbp
shl r15d, 8
mov qword [rsp + 0xa8], r14
mov r11, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
movzx r14d, byte [rbp + r12*2 + 0x1e4]
add r14d, r15d
imul r14, r10
mov qword [r13 + r11 + 4], r14
movzx r14d, byte [rbp + r12*2 + 0x1e5]
inc r12
add r14d, r15d
imul r14, r10
mov qword [r13 + r11 + 0xc], r14
add r13, 0x10
cmp r12, r8
jb 0x1401ab262
mov r11d, dword [rsp + 0x98]
lea r15d, [r12 + r12 + 1]
mov rbp, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xa8]
lea r10d, [r15 - 1]
cmp r10d, esi
jae 0x1401ab683
movsxd r15, r15d
movabs r12, 0x1000100010001
shl ebx, 8
lea rsi, [r14 + r15]
movzx r10d, byte [rsi + r9 + 0x1e3]
add ebx, r10d
imul r12, rbx
lea r13, [rdx + r15*4]
mov qword [rbp + r13*2 - 4], r12
jmp 0x1401ab683
mov r10d, esi
xor r13d, r13d
mov r12d, 1
xor r15d, r15d
shr r10d, 1
je 0x1401ab39b
mov r8d, ebx
mov qword [rsp + 0x60], r10
lea r12, [r14 + r9]
mov qword [rsp + 0xa0], rbp
lea r10, [rbp + rdx*2]
shl r8d, 8
mov dword [rsp + 0x98], r11d
movabs r11, 0x1000100010001
mov qword [rsp + 0xa8], r14
mov rbp, qword [rsp + 0x60]
movzx r14d, byte [r12 + r13*2 + 0x1e4]
add r14d, r8d
imul r14, r11
mov qword [r15 + r10 + 4], r14
movzx r14d, byte [r12 + r13*2 + 0x1e5]
inc r13
add r14d, r8d
imul r14, r11
mov qword [r15 + r10 + 0xc], r14
add r15, 0x10
cmp r13, rbp
jb 0x1401ab348
mov r11d, dword [rsp + 0x98]
lea r12d, [r13 + r13 + 1]
mov rbp, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xa8]
lea r10d, [r12 - 1]
cmp r10d, esi
jae 0x1401ab683
movsxd r12, r12d
movabs r13, 0x1000100010001
shl ebx, 8
lea rsi, [r14 + r12]
movzx r10d, byte [rsi + r9 + 0x1e3]
add ebx, r10d
imul r13, rbx
lea r15, [rdx + r12*4]
mov qword [rbp + r15*2 - 4], r13
jmp 0x1401ab683
cmp edi, 8
jne 0x1401ab4c4
test esi, esi
jle 0x1401ab79c
mov r12d, esi
xor eax, eax
mov r10d, 1
xor r8d, r8d
shr r12d, 1
je 0x1401ab47e
mov r15d, ebx
lea r13, [r14 + r9]
shl r15d, 8
lea r10, [rbp + rdx*2]
mov qword [rsp + 0xa0], rbp
movabs rbp, 0x1000100010001
mov qword [rsp + 0xa8], r14
movzx r14d, byte [r13 + rax*2 + 0x1e4]
add r14d, r15d
imul r14, rbp
mov qword [r8 + r10 + 4], r14
mov qword [r8 + r10 + 0xc], r14
movzx r14d, byte [r13 + rax*2 + 0x1e5]
inc rax
add r14d, r15d
imul r14, rbp
mov qword [r8 + r10 + 0x14], r14
mov qword [r8 + r10 + 0x1c], r14
add r8, 0x20
cmp rax, r12
jb 0x1401ab429
mov rbp, qword [rsp + 0xa0]
lea r10d, [rax + rax + 1]
mov r14, qword [rsp + 0xa8]
lea eax, [r10 - 1]
cmp eax, esi
jae 0x1401ab79c
movsxd r10, r10d
movabs r13, 0x1000100010001
shl ebx, 8
lea rax, [r14 + r10]
movzx r12d, byte [rax + r9 + 0x1e3]
add ebx, r12d
imul r13, rbx
movsxd rax, esi
lea r15, [rdx + r10*8]
mov qword [rbp + r15*2 - 0xc], r13
mov qword [rbp + r15*2 - 4], r13
jmp 0x1401ab683
xor r12d, r12d
xor r15d, r15d
xor r13d, r13d
test esi, esi
jle 0x1401ab79c
shl ebx, 8
lea eax, [rdi + 0xf]
shr eax, 4
lea r10, [r14 + r9]
mov dword [rsp + 0xb0], ecx
lea r8, [rbp + rdx*2]
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xc0], r9
xor r9d, r9d
mov dword [rsp + 0x98], r11d
movabs r11, 0x1000100010001
mov qword [rsp + 0xa0], rbp
mov qword [rsp + 0xa8], r14
movzx ecx, byte [r15 + r10 + 0x1e4]
mov ebp, r9d
add ecx, ebx
xor edx, edx
imul rcx, r11
test edi, edi
jle 0x1401ab560
movsxd r13, r13d
lea r14, [r8 + r13*2]
inc ebp
mov qword [r14 + rdx*2 + 4], rcx
mov qword [r14 + rdx*2 + 0xc], rcx
mov qword [r14 + rdx*2 + 0x14], rcx
mov qword [r14 + rdx*2 + 0x1c], rcx
add rdx, 0x10
cmp ebp, eax
jb 0x1401ab542
inc r12d
add r13d, edi
inc r15
cmp r12d, esi
jb 0x1401ab523
mov ecx, dword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
mov r9, qword [rsp + 0xc0]
mov r11d, dword [rsp + 0x98]
mov rbp, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xa8]
movsxd rax, esi
jmp 0x1401ab683
test esi, esi
jle 0x1401ab79c
mov r8d, esi
xor r15d, r15d
mov eax, 1
shr r8d, 1
je 0x1401ab63c
lea rax, [r14 + r9]
lea r10, [rbp + rdx*2]
nop word [rax + rax]
movsxd r15, r15d
mov byte [rsp + 0xe1], bl
mov r12b, byte [rax + r15*2 + 0x1e4]
mov byte [rsp + 0xe0], r12b
lea r12d, [r15*4]
movsxd r12, r12d
movzx r13d, word [rsp + 0xe0]
mov word [r10 + r12*2 + 4], r13w
mov word [r10 + r12*2 + 6], r13w
mov r13b, byte [rax + r15*2 + 0x1e5]
inc r15d
mov byte [rsp + 0xe0], r13b
movzx r13d, word [rsp + 0xe0]
mov word [r10 + r12*2 + 8], r13w
mov word [r10 + r12*2 + 0xa], r13w
cmp r15d, r8d
jb 0x1401ab5d0
lea eax, [r15 + r15 + 1]
lea r10d, [rax - 1]
cmp r10d, esi
jae 0x1401ab79c
movsxd r10, eax
add eax, eax
add r10, r14
movsxd rax, eax
add rax, rdx
mov byte [rsp + 0xe1], bl
mov r12b, byte [r10 + r9 + 0x1e3]
mov byte [rsp + 0xe0], r12b
movzx ebx, word [rsp + 0xe0]
mov word [rbp + rax*2], bx
mov word [rbp + rax*2 + 2], bx
movsxd rax, esi
movsxd rdi, edi
add r9, rax
imul rax, rdi
inc ecx
add rdx, rax
dec r11d
cmp ecx, dword [rsp + 0xc8]
jb 0x1401ab198
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
add rsp, 0xf0
pop rbp
pop r15
pop r14
ret
test esi, esi
jle 0x1401ab79c
mov r10d, esi
xor r8d, r8d
mov r12d, 1
shr r10d, 1
je 0x1401ab75c
lea rax, [r14 + r9]
lea r12, [rbp + rdx*2]
nop dword [rax + rax]
movsxd r8, r8d
mov byte [rsp + 0xd1], bl
mov r13b, byte [rax + r8*2 + 0x1e4]
mov byte [rsp + 0xd0], r13b
lea r13d, [r8 + r8]
movsxd r13, r13d
movzx r15d, word [rsp + 0xd0]
mov word [r12 + r13*2 + 4], r15w
mov r15b, byte [rax + r8*2 + 0x1e5]
inc r8d
mov byte [rsp + 0xd0], r15b
movzx r15d, word [rsp + 0xd0]
mov word [r12 + r13*2 + 6], r15w
cmp r8d, r10d
jb 0x1401ab700
lea r12d, [r8 + r8 + 1]
lea eax, [r12 - 1]
cmp eax, esi
jae 0x1401ab79c
movsxd r12, r12d
mov byte [rsp + 0xd1], bl
lea rax, [r14 + r12]
add r12, rdx
mov r10b, byte [rax + r9 + 0x1e3]
mov byte [rsp + 0xd0], r10b
movzx ebx, word [rsp + 0xd0]
mov word [rbp + r12*2 + 2], bx
movsxd rax, esi
jmp 0x1401ab683
movsxd rax, esi
jmp 0x1401ab683