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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov rdi, rcx
mov r14, rdx
xor ecx, ecx
mov rsi, r8
mov r12b, cl
mov qword [rsp + 0x58], rcx
mov dword [rsp + 0x4c], ecx
xor r9d, r9d
mov rbx, qword [rdi + 0x10]
xor r8d, r8d
lea edx, [rcx + 0x14]
mov dword [rsp + 0x50], ecx
mov dword [rsp + 0x20], ecx
mov rcx, rbx
mov qword [rsp + 0x80], rbx
call fcn.140025d88
mov rcx, qword [rsp + 0x100]
xor edx, edx
mov dword [rsp + 0x68], eax
mov r15d, edx
mov rax, qword [rsi + 0x20]
mov r9d, edx
mov rsi, qword [r14 + 0x20]
movabs r8, 0x8000000000000000
movsxd r14, dword [r14 + 0x14]
lea r10d, [rdx + 3]
mov r13, qword [rcx + 0x48]
lea ecx, [rdx + 1]
shl r14, 6
add r14, rsi
mov dword [rsp + 0xe0], edx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x40], rdx
cmp rsi, r14
jae 0x140065e1f
cmp qword [r13], rdx
jne 0x140065d36
test byte [rsi + 0x12], 2
jne 0x140065d36
mov rbp, qword [rsi]
test byte [rbp + 4], cl
jne 0x140065d36
mov rax, qword [rsp + 0xf0]
mov edx, r10d
mov rcx, rbp
mov r8d, dword [rax + 0x48]
call fcn.140038b38
test eax, eax
je 0x140065d36
mov rcx, qword [rdi]
xor r9d, r9d
xor r8d, r8d
mov rdx, rbp
call fcn.140037f68
mov rdx, qword [rsp + 0x58]
mov r8, rax
mov rcx, qword [rdi]
call fcn.140037b18
mov qword [rsp + 0x58], rax
mov r8, qword [rsp + 0xf8]
mov rcx, rsi
mov rdx, qword [rsp + 0xf0]
call fcn.140065bb8
xor edx, edx
test eax, eax
je 0x140065df5
movsxd rcx, dword [rsi + 0x28]
lea ebp, [rdx + 1]
shl rbp, cl
movabs rax, 0x8000000000000000
cmp ecx, 0x40
cmovge rbp, rax
test r12b, r12b
jne 0x140065da5
mov rax, rcx
lea rdx, str.automatic_index_on__s__s_
mov rcx, qword [rsp + 0x60]
shl rax, 5
mov r9, qword [rcx + 8]
mov r8, qword [rcx]
mov ecx, 0x11c
mov r9, qword [rax + r9]
call fcn.14000ab30
xor edx, edx
mov r12b, 1
mov r9, qword [rsp + 0x40]
test r9, rbp
jne 0x140065dfa
mov rcx, qword [rdi]
lea r14d, [r15 + 1]
mov r8d, r14d
mov rdx, r13
call fcn.1400666d0
xor edx, edx
test eax, eax
jne 0x1400662fe
mov r9, qword [rsp + 0x40]
mov rax, qword [r13 + 0x38]
or r9, rbp
movsxd rcx, r15d
mov r15d, r14d
mov dword [rsp + 0xe0], r14d
mov r14, qword [rsp + 0x70]
mov qword [rsp + 0x40], r9
mov qword [rax + rcx*8], rsi
jmp 0x140065dfa
mov r9, qword [rsp + 0x40]
mov ecx, 1
add rsi, 0x40
lea r10d, [rcx + 2]
cmp rsi, r14
jb 0x140065ce1
mov rax, qword [rsp + 0x60]
movabs r8, 0x8000000000000000
mov r11, qword [rsp + 0xf0]
not r9
or r9, r8
mov word [r13 + 0x2c], r15w
mov word [r13 + 0x18], r15w
mov ebp, 0x3f
mov dword [r13 + 0x28], 0x4241
and r9, qword [r11 + 0x60]
movzx r8d, word [rax + 0x46]
mov qword [rsp + 0x40], r9
cmp bp, r8w
jge 0x140065e61
mov r10d, ebp
mov dword [rsp + 0x48], ebp
jmp 0x140065e70
movsx r10d, r8w
mov dword [rsp + 0x48], r10d
cmp dx, r8w
jge 0x140065e96
mov ecx, r15d
mov eax, edx
inc r15d
bt r9, rax
cmovae r15d, ecx
mov ecx, 1
add edx, ecx
cmp edx, r10d
jl 0x140065e70
mov dword [rsp + 0xe0], r15d
xor edx, edx
cmp qword [r11 + 0x60], rdx
jge 0x140065eaf
movsx eax, r8w
add r15d, 0xffffffc1
add r15d, eax
mov dword [rsp + 0xe0], r15d
lea edx, [rcx + r15]
xor r8d, r8d
mov rcx, qword [rdi]
lea r9, [rsp + 0x78]
call fcn.140043ab0
xor edx, edx
mov r12, rax
test rax, rax
je 0x1400662fe
mov rsi, qword [rsp + 0xe8]
mov r11, qword [rsp + 0x60]
mov qword [r13 + 0x20], rax
lea rax, str.auto_index
mov qword [r12], rax
mov r13d, edx
mov qword [r12 + 0x18], r11
mov rsi, qword [rsi + 0x20]
cmp rsi, r14
jae 0x140065fb8
mov r15, qword [rsp + 0x70]
mov r14d, edx
mov ebp, edx
mov ebx, edx
mov r8, qword [rsp + 0xf8]
mov rcx, rsi
mov rdx, qword [rsp + 0xf0]
call fcn.140065bb8
xor edx, edx
test eax, eax
je 0x140065f91
mov ecx, dword [rsi + 0x28]
lea eax, [rdx + 1]
shl rax, cl
movabs r8, 0x8000000000000000
cmp ecx, 0x40
cmovge rax, r8
test rbx, rax
jne 0x140065f91
mov rdx, qword [rsi]
or rbx, rax
mov rax, qword [r12 + 8]
mov word [rax + rbp], cx
mov rcx, rdi
mov r8, qword [rdx + 0x18]
mov rdx, qword [rdx + 0x10]
call fcn.140037164
xor edx, edx
test rax, rax
je 0x140065f76
mov rcx, qword [rax]
jmp 0x140065f7d
lea rcx, str.BINARY
mov rax, qword [r12 + 0x40]
inc r13d
add rbp, 2
mov qword [r14 + rax], rcx
add r14, 8
add rsi, 0x40
cmp rsi, r15
jb 0x140065f0e
mov rbx, qword [rsp + 0x80]
mov ebp, 0x3f
mov r15d, dword [rsp + 0xe0]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x48]
lea r14, str.BINARY
mov ecx, edx
mov esi, 1
test r10d, r10d
jle 0x140066012
mov r9, qword [rsp + 0x40]
movsxd rax, r13d
mov rdx, rax
shl rdx, 3
lea r8, [rax + rax]
mov eax, ecx
bt r9, rax
jae 0x140066009
mov rax, qword [r12 + 8]
add r13d, esi
mov word [r8 + rax], cx
add r8, 2
mov rax, qword [r12 + 0x40]
mov qword [rdx + rax], r14
add rdx, 8
add ecx, esi
cmp ecx, r10d
jl 0x140065fe3
xor edx, edx
mov rax, qword [rsp + 0xf0]
cmp qword [rax + 0x60], rdx
jge 0x14006605d
cmp bp, word [r11 + 0x46]
jge 0x14006605d
movsxd rax, r13d
mov rcx, rax
shl rcx, 3
lea rdx, [rax + rax]
mov rax, qword [r12 + 8]
add r13d, esi
mov word [rdx + rax], bp
add ebp, esi
mov rax, qword [r12 + 0x40]
lea rdx, [rdx + 2]
mov qword [rcx + rax], r14
lea rcx, [rcx + 8]
movsx eax, word [r11 + 0x46]
cmp ebp, eax
jl 0x140066035
mov rax, qword [r12 + 8]
lea r9d, [r15 + 1]
movsxd rcx, r13d
or edx, 0xffffffff
xor r15d, r15d
mov dword [rsp + 0x20], r15d
mov word [rax + rcx*2], dx
mov rax, qword [r12 + 0x40]
lea edx, [r15 + 0x6c]
mov qword [rax + rcx*8], r14
mov rcx, rbx
mov eax, dword [rdi + 0x34]
mov r14, qword [rsp + 0x100]
mov dword [r14 + 8], eax
add dword [rdi + 0x34], esi
mov r8d, dword [r14 + 8]
call fcn.140025d88
mov rdx, r12
mov rcx, rdi
call fcn.140026640
add dword [rdi + 0x48], esi
movzx eax, byte [r14 + 0x2c]
imul rsi, rax, 0x78
mov rax, qword [rsp + 0xe8]
mov rax, qword [rax]
mov rbp, qword [rax + 8]
lea eax, [r15 + 0x10]
test byte [rsi + rbp + 0x48], al
je 0x140066112
mov r14d, dword [rsi + rbp + 0x3c]
lea edx, [rax + 0x33]
xor r9d, r9d
mov dword [rsp + 0x20], r15d
xor r8d, r8d
mov rcx, rbx
call fcn.140025d88
mov dword [rsp + 0x50], eax
lea edx, [r15 + 0xf]
mov eax, dword [rsi + rbp + 0x38]
xor r9d, r9d
mov r8d, r14d
mov dword [rsp + 0x20], eax
mov rcx, rbx
call fcn.140025d88
lea edx, [r15 + 0x10]
jmp 0x14006611b
mov r14d, dword [r14 + 4]
mov edx, 0x25
xor r9d, r9d
mov dword [rsp + 0x20], r15d
mov r8d, r14d
mov rcx, rbx
call fcn.140025d88
mov r14, qword [rsp + 0x58]
xor edx, edx
mov r15d, eax
test r14, r14
je 0x14006616c
mov rcx, rbx
call fcn.140026038
mov r9d, 0x10
mov dword [rsp + 0x4c], eax
mov r8d, eax
mov rdx, r14
mov rcx, rdi
call fcn.14003c0f0
mov rcx, qword [rsp + 0x88]
bts dword [rcx + 0x28], 0x11
xor edx, edx
mov cl, byte [rdi + 0x1f]
test cl, cl
jne 0x140066181
mov eax, 1
add dword [rdi + 0x38], eax
mov r14d, dword [rdi + 0x38]
jmp 0x140066192
sub cl, 1
movzx eax, cl
mov byte [rdi + 0x1f], al
mov r14d, dword [rdi + rax*4 + 0x18c]
mov rcx, qword [rsp + 0x100]
mov r9d, r14d
mov dword [rsp + 0x38], edx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rdx
mov r8d, dword [rcx + 4]
mov rcx, rdi
mov dword [rsp + 0x20], edx
mov rdx, r12
call fcn.1400477f4
xor ecx, ecx
mov r12d, eax
mov rax, qword [rsp + 0x100]
mov r9d, r14d
mov dword [rsp + 0x20], ecx
mov edx, 0x80
mov rcx, rbx
mov r8d, dword [rax + 8]
call fcn.140025d88
movsxd rcx, dword [rbx + 0xb8]
xor r8d, r8d
lea r9d, [r8 + 0x10]
test ecx, ecx
jle 0x140066209
mov rax, qword [rbx + 0x68]
lea rdx, [rcx + rcx*2]
mov word [rax + rdx*8 - 0x16], r9w
mov ecx, dword [rbx + 0xb8]
cmp qword [rsp + 0x58], r8
je 0x140066228
mov rax, qword [rbx + 0x18]
mov rdx, qword [rax + 0x58]
test rdx, rdx
je 0x140066228
mov eax, dword [rsp + 0x4c]
not eax
cdqe
mov dword [rdx + rax*4], ecx
mov rcx, rbx
test byte [rsi + rbp + 0x48], r9b
je 0x140066286
mov edx, dword [rsp + 0x50]
lea r9d, [r12 + r13]
call fcn.14002666c
mov edx, r15d
mov rcx, rdi
mov dword [rax + 8], r9d
mov eax, 1
mov r9d, dword [rsi + rbp + 0x40]
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x100]
mov r8d, dword [rax + 4]
call fcn.140065b1c
xor ecx, ecx
mov r9d, r15d
mov dword [rsp + 0x20], ecx
xor r8d, r8d
lea edx, [rcx + 0xd]
mov rcx, rbx
call fcn.140025d88
and dword [rsi + rbp + 0x48], 0xffffffef
jmp 0x1400662a5
mov rax, qword [rsp + 0x100]
lea r9d, [r15 + 1]
mov dword [rsp + 0x20], r8d
mov edx, 7
mov r8d, dword [rax + 4]
call fcn.140025d88
movsxd r9, dword [rbx + 0xb8]
test r9d, r9d
jle 0x1400662ca
mov rax, qword [rbx + 0x68]
lea rcx, [r9 + r9*2]
mov edx, 3
mov word [rax + rcx*8 - 0x16], dx
mov r9d, dword [rbx + 0xb8]
mov edx, r15d
mov rcx, rbx
call fcn.14002666c
mov edx, r14d
mov rcx, rdi
mov dword [rax + 8], r9d
call fcn.14003cd10
call fcn.14003a658
mov edx, dword [rsp + 0x68]
mov rcx, rbx
call fcn.14002666c
mov ecx, dword [rbx + 0xb8]
mov dword [rax + 8], ecx
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140066313
mov rcx, qword [rdi]
mov rdx, rax
call fcn.140037dec
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret