Function at 0x14018a0d0
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, 0x98
xor r12d, r12d
xor r14d, r14d
xor esi, esi
mov r15, qword [rcx + 0x10]
mov qword [rsp + 0xe8], rdx
mov rbx, rcx
mov edx, 0xf
mov rcx, r15
mov r13, r8
mov qword [rsp + 0xf8], r9
call fcn.140201780
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x74], eax
mov rax, qword [r13 + 0x20]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xe8]
mov rdi, qword [rax + 0x20]
movsxd rax, dword [rax + 0x14]
imul rax, rax, 0x38
add rax, rdi
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x100]
mov rbp, qword [rax + 0x60]
cmp rdi, qword [rsp + 0x60]
jae 0x14018a24c
test byte [rdi + 0x12], 2
jne 0x14018a1a0
mov r9, qword [rdi]
mov rdx, r13
mov rcx, r9
mov qword [rsp + 0x58], r9
call fcn.1401db480
mov r9, qword [rsp + 0x58]
test eax, eax
je 0x14018a1a0
mov rcx, qword [rbx]
mov rdx, r9
xor r8d, r8d
call fcn.1401daad0
mov rdx, qword [rsp + 0x48]
mov rcx, rbx
mov r8, rax
call fcn.1401d8170
mov qword [rsp + 0x48], rax
mov r8, qword [rsp + 0xf8]
mov rdx, r13
mov rcx, rdi
call fcn.14021e9b0
test eax, eax
je 0x14018a243
mov eax, 1
movsxd rcx, dword [rdi + 0x20]
shl rax, 0x3f
mov qword [rsp + 0x58], rax
cmp ecx, 0x3f
jg 0x14018a1df
mov eax, 1
shl rax, cl
mov qword [rsp + 0x58], rax
test r12b, r12b
jne 0x14018a208
mov rax, qword [rsp + 0x50]
imul rcx, rcx, 0x18
lea rdx, str.automatic_index_on__s__s_
add rcx, qword [rax + 8]
mov r8, qword [rax]
mov r9, qword [rcx]
mov ecx, 0x11c
call fcn.140216e50
mov r12b, 1
test qword [rsp + 0x58], r14
jne 0x14018a243
mov rcx, qword [rbx]
lea r8d, [rsi + 1]
mov rdx, rbp
mov dword [rsp + 0x68], r8d
call fcn.140228350
test eax, eax
jne 0x14018a6ad
mov rax, qword [rbp + 0x48]
mov r8d, dword [rsp + 0x68]
or r14, qword [rsp + 0x58]
mov qword [rax + rsi*8], rdi
movsxd rsi, r8d
add rdi, 0x38
jmp 0x14018a150
mov rax, qword [rsp + 0x50]
mov r8, qword [r13 + 0x50]
not r14
mov word [rbp + 0x3c], si
bts r14, 0x3f
mov edx, 0x3f
mov word [rbp + 0x18], si
movsx eax, word [rax + 0x36]
and r14, r8
mov dword [rbp + 0x38], 0x4241
mov qword [rsp + 0x68], r14
cmp ax, 0x3f
cmovle edx, eax
xor ecx, ecx
movsx edi, dx
mov dword [rsp + 0x70], edi
cmp ecx, dword [rsp + 0x70]
jge 0x14018a2a4
mov rdx, qword [rsp + 0x68]
shr rdx, cl
inc ecx
and edx, 1
add esi, edx
jmp 0x14018a28d
test r8, r8
jns 0x14018a2ad
lea esi, [rsi + rax - 0x3f]
mov rcx, qword [rbx]
lea edx, [rsi + 1]
lea r9, [rsp + 0x88]
xor r8d, r8d
movsx edx, dx
call fcn.1401cdd20
mov r12, rax
test rax, rax
je 0x14018a6ad
mov qword [rbp + 0x20], rax
lea rax, str.auto_index
xor edi, edi
mov qword [r12], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x58], 0
mov qword [r12 + 0x18], rax
mov rax, qword [rsp + 0xe8]
mov r14, qword [rax + 0x20]
cmp r14, qword [rsp + 0x60]
jae 0x14018a38f
mov r8, qword [rsp + 0xf8]
mov rdx, r13
mov rcx, r14
call fcn.14021e9b0
test eax, eax
je 0x14018a386
mov ecx, dword [r14 + 0x20]
mov eax, 1
shl rax, 0x3f
cmp ecx, 0x3f
jg 0x14018a33e
mov eax, 1
shl rax, cl
test qword [rsp + 0x58], rax
jne 0x14018a386
or qword [rsp + 0x58], rax
mov rax, qword [r12 + 8]
movsxd r8, edi
mov rdx, qword [r14]
mov qword [rsp + 0x78], r8
mov word [rax + r8*2], cx
mov rcx, rbx
call fcn.1401da8c0
mov r8, qword [rsp + 0x78]
lea rdx, str.BINARY
test rax, rax
je 0x14018a37b
mov rdx, qword [rax]
mov rax, qword [r12 + 0x40]
inc edi
mov qword [rax + r8*8], rdx
add r14, 0x38
jmp 0x14018a302
mov r9, qword [r12 + 8]
mov r8, qword [r12 + 0x40]
xor ecx, ecx
lea rdx, str.BINARY
cmp ecx, dword [rsp + 0x70]
jge 0x14018a3c6
mov rax, qword [rsp + 0x68]
shr rax, cl
test al, 1
je 0x14018a3c2
movsxd rax, edi
inc edi
mov word [r9 + rax*2], cx
mov qword [r8 + rax*8], rdx
inc ecx
jmp 0x14018a3a2
cmp qword [r13 + 0x50], 0
jns 0x14018a3fb
movsxd rax, edi
mov edx, 0x3f
lea r10, str.BINARY
mov rcx, qword [rsp + 0x50]
mov edi, eax
movsx ecx, word [rcx + 0x36]
cmp ecx, edx
jle 0x14018a3fb
mov word [r9 + rax*2], dx
inc edx
mov qword [r8 + rax*8], r10
inc rax
jmp 0x14018a3dc
movsxd rax, edi
lea rdx, str.BINARY
mov rcx, r15
mov word [r9 + rax*2], 0xffff
lea r9d, [rsi + 1]
mov qword [r8 + rax*8], rdx
mov r8d, dword [rbx + 0x34]
mov edx, 0x74
lea eax, [r8 + 1]
mov dword [rbx + 0x34], eax
mov rax, qword [rsp + 0x100]
mov dword [rax + 8], r8d
call fcn.1402017c0
mov rdx, r12
mov rcx, rbx
call fcn.14020bfa0
mov rax, qword [rbx]
test byte [rax + 0x62], 8
jne 0x14018a476
mov eax, dword [rbx + 0x38]
mov r8d, 0x2710
mov edx, 0x4d
mov rcx, r15
lea r9d, [rax + 1]
mov rax, qword [rsp + 0x100]
mov dword [rbx + 0x38], r9d
mov dword [rax + 0x34], r9d
call fcn.1402017c0
mov rax, qword [rsp + 0xe8]
mov rax, qword [rax]
mov rax, qword [rax + 8]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x100]
movzx r14d, byte [rax + 0x40]
mov rsi, r14
imul r14, r14, 0x68
add r14, qword [rsp + 0x58]
test byte [r14 + 0x48], 0x20
je 0x14018a4f5
xor r9d, r9d
xor r8d, r8d
mov edx, 0x47
mov rcx, r15
mov r13d, dword [r14 + 0x3c]
call fcn.1402017c0
xor r9d, r9d
mov edx, 0xb
mov rcx, r15
mov dword [rsp + 0x60], eax
mov eax, dword [r14 + 0x38]
mov r8d, r13d
mov dword [rsp + 0x20], eax
call fcn.1402017e0
mov r8d, r13d
mov edx, 0xc
mov rcx, r15
call fcn.1402017a0
mov r13d, eax
jmp 0x14018a519
mov rax, qword [rsp + 0x100]
mov edx, 0x24
mov rcx, r15
mov r8d, dword [rax + 4]
call fcn.1402017a0
mov dword [rsp + 0x60], 0
mov r13d, eax
xor r14d, r14d
cmp qword [rsp + 0x48], 0
je 0x14018a54c
mov eax, dword [rbx + 0x44]
mov rdx, qword [rsp + 0x48]
mov r9d, 0x10
mov rcx, rbx
lea r14d, [rax - 1]
mov dword [rbx + 0x44], r14d
mov r8d, r14d
call fcn.1401dac90
or dword [rbp + 0x38], 0x20000
mov rcx, rbx
mov rdx, r12
call fcn.1401e79e0
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x50], eax
mov r9d, eax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r8d, dword [rax + 4]
call fcn.1401e70b0
mov r12d, eax
mov rax, qword [rsp + 0x100]
mov r8d, dword [rax + 0x34]
test r8d, r8d
je 0x14018a5c2
movzx eax, word [rbp + 0x18]
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov rcx, r15
mov edx, 0xb4
mov dword [rsp + 0x28], eax
call fcn.1402018f0
mov rax, qword [rsp + 0x100]
mov r9d, dword [rsp + 0x50]
mov edx, 0x8a
mov rcx, r15
mov r8d, dword [rax + 8]
call fcn.1402017c0
mov edx, 0x10
mov rcx, r15
call fcn.140201bc0
cmp qword [rsp + 0x48], 0
je 0x14018a5fd
mov edx, r14d
call fcn.14020bd60
imul rsi, rsi, 0x68
mov rbp, qword [rsp + 0x58]
mov rax, qword [rsp + 0x100]
mov r8d, dword [rax + 4]
add rbp, rsi
test byte [rbp + 0x48], 0x20
lea r14, [rbp + 0x30]
je 0x14018a66c
mov edx, dword [rsp + 0x60]
mov rcx, r15
mov dword [rsp + 0x58], r8d
add r12d, edi
call fcn.140209880
mov r8d, dword [rsp + 0x58]
mov edx, r13d
mov rcx, rbx
mov dword [rax + 8], r12d
mov rax, qword [rsp + 0x100]
mov eax, dword [rax + 8]
mov dword [rsp + 0x20], eax
mov r9d, dword [rbp + 0x40]
call fcn.14021ee60
mov edx, r13d
mov rcx, r15
call fcn.1402098a0
and byte [r14 + 0x18], 0xdf
jmp 0x14018a68a
mov edx, 0x27
mov rcx, r15
lea r9d, [r13 + 1]
call fcn.1402017c0
mov edx, 3
mov rcx, r15
call fcn.140201bc0
mov edx, r13d
mov rcx, r15
call fcn.14020a2b0
mov edx, dword [rsp + 0x50]
mov rcx, rbx
call fcn.1401f8070
mov edx, dword [rsp + 0x74]
mov rcx, r15
call fcn.14020a2b0
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rbx]
call fcn.1401daa20
nop
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret