Function at 0x1401e9b10
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, 0xa8
mov rax, qword [rcx + 0x10]
mov esi, dword [rax + 0x90]
mov qword [rsp + 0x40], rax
mov r13, rcx
mov r12, r8
mov rbp, r9
mov qword [rsp + 0xf8], rdx
mov dword [rsp + 0x70], esi
cmp esi, dword [rax + 0x94]
jge 0x1401ea528
mov ebx, dword [rsp + 0x70]
mov rsi, qword [rsp + 0x40]
lea eax, [rbx + 1]
mov dword [rsi + 0x90], eax
movsxd rax, ebx
lea rdx, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 0xe
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov rax, qword [r12 + 0x20]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0xf8]
movsxd rdx, dword [rax + 0x14]
mov rdi, qword [rax + 0x20]
lea rax, [rdx*8]
sub rax, rdx
lea r15, [rdi + rax*8]
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x68], r15
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x60], rax
cmp rdi, r15
jae 0x1401ea620
mov qword [rsp + 0xf0], r13
xor r14d, r14d
mov r13, r12
xor esi, esi
mov qword [rsp + 0x48], 0
xor ebx, ebx
mov r12, rax
jmp 0x1401e9ca3
mov rdx, qword [r13 + 0x20]
mov qword [rsp + 0x20], rbp
mov rcx, rdi
mov r9d, dword [r13 + 0x44]
movzx r8d, byte [r13 + 0x3c]
call fcn.1401678e0
test eax, eax
je 0x1401e9c9a
movsxd rcx, dword [rdi + 0x20]
mov r11d, 1
movabs rax, 0x8000000000000000
shl r11, cl
cmp ecx, 0x40
cmovge r11, rax
test r14b, r14b
je 0x1401ea2d8
test r11, rsi
jne 0x1401e9d10
movzx eax, word [r12 + 0x40]
lea r14d, [rbx + 1]
cmp r14d, eax
jle 0x1401e9c85
mov rax, qword [rsp + 0xf0]
mov r8d, r14d
mov rdx, r12
mov qword [rsp + 0x50], r11
mov rcx, qword [rax]
call fcn.140174790
mov r11, qword [rsp + 0x50]
test eax, eax
jne 0x1401ea57f
mov rax, qword [r12 + 0x48]
or rsi, r11
mov qword [rax + rbx*8], rdi
movsxd rbx, r14d
mov r14d, 1
add rdi, 0x38
cmp r15, rdi
jbe 0x1401e9d1f
test byte [rdi + 0x12], 2
jne 0x1401e9c00
mov r11, qword [rdi]
mov rdx, r13
mov rcx, r11
mov qword [rsp + 0x50], r11
call fcn.1401718c0
test eax, eax
je 0x1401e9c00
mov r11, qword [rsp + 0x50]
test r11, r11
je 0x1401e9cee
mov rax, qword [rsp + 0xf0]
mov rdx, r11
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rax]
call fcn.140177060
mov r11, rax
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xf0]
mov r8, r11
call fcn.14018ef90
mov qword [rsp + 0x48], rax
jmp 0x1401e9c00
add rdi, 0x38
mov r14d, 1
cmp r15, rdi
ja 0x1401e9ca3
mov r12, r13
not rsi
mov r13, qword [rsp + 0xf0]
mov eax, ebx
bts rsi, 0x3f
mov rdi, qword [rsp + 0x60]
mov rdx, qword [r12 + 0x50]
mov r14d, 0x3f
mov word [rdi + 0x3c], ax
and rsi, rdx
mov word [rdi + 0x18], ax
mov rax, qword [rsp + 0x58]
mov dword [rdi + 0x38], 0x4241
movsx eax, word [rax + 0x36]
cmp ax, 0x3f
mov word [rsp + 0x76], ax
cmovle r14d, eax
test ax, ax
jle 0x1401e9d8b
xor ecx, ecx
nop dword [rax + rax]
mov rax, rsi
shr rax, cl
add ecx, 1
and eax, 1
add ebx, eax
cmp r14d, ecx
jne 0x1401e9d78
test rdx, rdx
jns 0x1401e9d99
movsx eax, word [rsp + 0x76]
lea ebx, [rbx + rax - 0x3f]
mov rcx, qword [r13]
lea edx, [rbx + 1]
lea r9, [rsp + 0x98]
xor r8d, r8d
movsx edx, dx
call fcn.1401766d0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1401ea2aa
mov rdi, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov qword [rdi + 0x20], rax
lea rdi, str.auto_index
mov qword [rax], rdi
mov rdi, qword [rsp + 0x58]
mov qword [rax + 0x18], rdi
mov rdi, qword [rsp + 0xf8]
mov r15, qword [rdi + 0x20]
cmp rdx, r15
jbe 0x1401ea59e
xor r10d, r10d
lea rcx, str.BINARY
xor edi, edi
mov dword [rsp + 0x80], ebx
mov qword [rsp + 0x78], rsi
mov rbx, r10
mov rsi, rax
mov dword [rsp + 0x84], r14d
mov r14, r12
mov r12, r15
mov r15, rbp
mov qword [rsp + 0x68], rcx
mov rbp, rdx
jmp 0x1401e9e3d
add r12, 0x38
cmp rbp, r12
jbe 0x1401e9ef0
mov rdx, qword [r14 + 0x20]
mov qword [rsp + 0x20], r15
mov rcx, r12
mov r9d, dword [r14 + 0x44]
movzx r8d, byte [r14 + 0x3c]
call fcn.1401678e0
test eax, eax
je 0x1401e9e30
mov ecx, dword [r12 + 0x20]
mov eax, 1
movabs rdx, 0x8000000000000000
shl rax, cl
cmp ecx, 0x40
cmovge rax, rdx
test rax, rbx
jne 0x1401e9e30
mov r8, qword [r12]
or rbx, rax
mov rax, qword [rsi + 8]
movsxd r9, edi
mov qword [rsp + 0x88], r9
test byte [r8 + 5], 4
mov r10, qword [r8 + 0x18]
mov word [rax + r9*2], cx
mov rdx, qword [r8 + 0x10]
jne 0x1401ea310
mov r8, r10
mov rcx, r13
call fcn.14018b300
mov r9, qword [rsp + 0x88]
lea rdx, str.BINARY
test rax, rax
je 0x1401e9ece
mov rdx, qword [rax]
mov rax, qword [rsi + 0x40]
add r12, 0x38
add edi, 1
mov qword [rax + r9*8], rdx
cmp rbp, r12
ja 0x1401e9e3d
nop word cs:[rax + rax]
movsxd rax, edi
mov r12, r14
mov rsi, qword [rsp + 0x78]
mov ebx, dword [rsp + 0x80]
mov r14d, dword [rsp + 0x84]
lea rdx, [rax + rax]
shl rax, 3
mov rcx, qword [rsp + 0x50]
cmp word [rsp + 0x76], 0
mov r8, qword [rcx + 8]
mov rcx, qword [rcx + 0x40]
jle 0x1401e9f58
mov r9, qword [rsp + 0x68]
xor eax, eax
nop
bt rsi, rax
jae 0x1401e9f45
movsxd rdx, edi
add edi, 1
mov word [r8 + rdx*2], ax
mov qword [rcx + rdx*8], r9
add eax, 1
cmp r14d, eax
jne 0x1401e9f30
movsxd rax, edi
lea rdx, [rax + rax]
shl rax, 3
cmp qword [r12 + 0x50], 0
js 0x1401ea3f8
mov r11d, 0xffffffff
mov rsi, qword [rsp + 0x68]
lea r9d, [rbx + 1]
mov word [r8 + rdx], r11w
mov r8d, dword [r13 + 0x34]
mov edx, 0x74
mov qword [rcx + rax], rsi
mov rcx, qword [rsp + 0x40]
lea eax, [r8 + 1]
mov dword [r13 + 0x34], eax
mov rax, qword [rsp + 0x110]
mov dword [rax + 8], r8d
mov dword [rsp + 0x20], 0
call fcn.140181750
mov rdx, qword [rsp + 0x50]
mov rcx, r13
call fcn.1401894f0
mov rax, qword [r13]
test byte [rax + 0x62], 8
je 0x1401ea450
mov rax, qword [rsp + 0xf8]
mov rax, qword [rax]
mov rbx, qword [rax + 8]
mov rax, qword [rsp + 0x40]
mov esi, dword [rax + 0x90]
mov edx, dword [rax + 0x94]
mov qword [rsp + 0x58], rbx
mov rax, qword [rsp + 0x110]
movzx r14d, byte [rax + 0x40]
lea rax, [r14 + r14*2]
lea rax, [r14 + rax*4]
lea rax, [rbx + rax*8]
test byte [rax + 0x48], 0x20
jne 0x1401ea330
mov rax, qword [rsp + 0x110]
mov r8d, dword [rax + 4]
cmp esi, edx
jge 0x1401ea5b5
mov rbx, qword [rsp + 0x40]
lea eax, [rsi + 1]
mov dword [rbx + 0x90], eax
movsxd rax, esi
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov ebx, esi
xor esi, esi
lea rax, [rax + rdx*8]
mov dword [rax + 4], r8d
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x23
mov rdx, qword [rsp + 0x48]
xor ebp, ebp
test rdx, rdx
je 0x1401ea094
mov eax, dword [r13 + 0x44]
mov r9d, 0x10
mov rcx, r13
lea ebp, [rax - 1]
mov dword [r13 + 0x44], ebp
mov r8d, ebp
call fcn.1401de130
mov rax, qword [rsp + 0x60]
or dword [rax + 0x38], 0x20000
movzx eax, byte [r13 + 0x1f]
test al, al
je 0x1401ea4e0
sub eax, 1
mov byte [r13 + 0x1f], al
movzx eax, al
mov r12d, dword [r13 + rax*4 + 0xd8]
mov rax, qword [rsp + 0x110]
mov r9d, r12d
mov rcx, r13
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r8d, dword [rax + 4]
call fcn.1401e8f10
mov r15d, eax
mov rax, qword [rsp + 0x110]
mov r8d, dword [rax + 0x34]
test r8d, r8d
jne 0x1401ea4f8
mov rax, qword [rsp + 0x110]
mov dword [rsp + 0x20], 0
mov edx, 0x8a
mov r9d, r12d
mov rcx, qword [rsp + 0x40]
mov r8d, dword [rax + 8]
call fcn.140181750
mov rcx, qword [rsp + 0x40]
mov edx, dword [rcx + 0x90]
test edx, edx
jle 0x1401ea15b
mov r9, qword [rcx + 0x88]
movsxd rax, edx
mov r10d, 0x10
lea rax, [rax + rax*2]
lea rax, [r9 + rax*8]
mov word [rax - 0x16], r10w
cmp qword [rsp + 0x48], 0
je 0x1401ea184
mov rax, qword [rsp + 0x40]
not ebp
mov rcx, qword [rax + 0x18]
mov eax, dword [rcx + 0x44]
add eax, dword [rcx + 0x48]
js 0x1401ea58c
mov rax, qword [rcx + 0x50]
movsxd rbp, ebp
mov dword [rax + rbp*4], edx
mov rax, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x58]
mov r8d, dword [rax + 4]
lea rax, [r14 + r14*2]
lea rax, [r14 + rax*4]
test byte [rdx + rax*8 + 0x48], 0x20
je 0x1401ea490
add edi, r15d
test esi, esi
jns 0x1401ea1c1
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x90]
mov dword [rsp + 0x50], eax
lea esi, [rax - 1]
mov rcx, qword [rsp + 0x40]
lea rdx, [0x140438260]
mov rax, qword [rcx]
cmp byte [rax + 0x67], 0
je 0x1401ea568
mov rax, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x58]
mov dword [rdx + 8], edi
mov r9d, r8d
mov rdx, qword [r13 + 0x10]
mov r8d, ebx
mov eax, dword [rax + 8]
mov dword [rsp + 0x28], eax
lea rax, [r14 + r14*2]
lea rax, [r14 + rax*4]
lea rsi, [rsi + rax*8]
mov eax, dword [rsi + 0x40]
mov dword [rsp + 0x20], eax
mov rcx, qword [r13]
call fcn.140161430
mov rdi, qword [rsp + 0x40]
mov edx, ebx
mov rcx, rdi
call fcn.140182550
and byte [rsi + 0x48], 0xdf
mov edx, dword [rdi + 0x90]
mov rsi, qword [rsp + 0x40]
lea eax, [rdx - 1]
test ebx, ebx
lea rcx, [0x140438260]
cmovs ebx, eax
mov rax, qword [rsi]
movzx eax, byte [rax + 0x67]
test al, al
jne 0x1401ea261
mov rcx, qword [rsi + 0x88]
movsxd rbx, ebx
lea r8, [rbx + rbx*2]
lea rcx, [rcx + r8*8]
mov dword [rcx + 8], edx
test r12d, r12d
je 0x1401ea277
movzx ecx, byte [r13 + 0x1f]
cmp cl, 7
jbe 0x1401ea550
mov esi, dword [rsp + 0x70]
lea ecx, [rdx - 1]
test esi, esi
cmovns ecx, esi
mov ebx, ecx
lea rcx, [0x140438260]
test al, al
jne 0x1401ea2a7
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x88]
lea rcx, [rax + rcx*8]
mov dword [rcx + 8], edx
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x1401ea2c1
mov rcx, qword [r13]
mov rdx, rax
call fcn.14016afb0
nop
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [rcx + rcx*2]
mov rcx, qword [rsp + 0x58]
lea rdx, str.automatic_index_on__s__s_
mov qword [rsp + 0x50], r11
shl rax, 3
add rax, qword [rcx + 8]
mov r8, qword [rcx]
mov ecx, 0x11c
mov r9, qword [rax]
call fcn.140197c10
mov r11, qword [rsp + 0x50]
jmp 0x1401e9c45
mov r8, rdx
mov rcx, r13
mov rdx, r10
call fcn.14018b300
mov r9, qword [rsp + 0x88]
jmp 0x1401e9ebf
mov ebp, dword [rax + 0x3c]
cmp esi, edx
jge 0x1401ea5fc
mov rbx, qword [rsp + 0x40]
lea eax, [rsi + 1]
mov dword [rbx + 0x90], eax
movsxd rax, esi
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 0x47
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov rbx, qword [rsp + 0x58]
lea rax, [r14 + r14*2]
xor r9d, r9d
mov r8d, ebp
lea rax, [r14 + rax*4]
mov edx, 0xa
mov eax, dword [rbx + rax*8 + 0x38]
mov rbx, qword [rsp + 0x40]
mov dword [rsp + 0x20], eax
mov rcx, rbx
call fcn.140181750
mov rax, rbx
mov ebx, dword [rbx + 0x90]
cmp ebx, dword [rax + 0x94]
jge 0x1401ea5d8
mov rcx, qword [rsp + 0x40]
lea eax, [rbx + 1]
mov dword [rcx + 0x90], eax
movsxd rax, ebx
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], ebp
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0xb
jmp 0x1401ea060
mov r10, qword [rsp + 0x58]
cmp word [r10 + 0x36], 0x3f
jle 0x1401e9f64
lea eax, [rdi + 1]
mov r11, qword [rsp + 0x68]
mov edx, 0x3f
cdqe
nop dword [rax + rax]
mov word [r8 + rax*2 - 2], dx
movsx r9d, word [r10 + 0x36]
add edx, 1
mov edi, eax
mov qword [rcx + rax*8 - 8], r11
add rax, 1
cmp r9d, edx
jg 0x1401ea420
movsxd rax, edi
lea rdx, [rax + rax]
shl rax, 3
jmp 0x1401e9f64
mov eax, dword [r13 + 0x38]
mov rcx, qword [rsp + 0x40]
mov r8d, 0x2710
mov edx, 0x4d
lea r9d, [rax + 1]
mov rax, qword [rsp + 0x110]
mov dword [r13 + 0x38], r9d
mov dword [rax + 0x34], r9d
mov dword [rsp + 0x20], 0
call fcn.140181750
jmp 0x1401e9fc6
mov rsi, qword [rsp + 0x40]
mov dword [rsp + 0x20], 0
mov edx, 0x26
lea r9d, [rbx + 1]
mov rcx, rsi
call fcn.140181750
mov edx, dword [rsi + 0x90]
test edx, edx
jle 0x1401ea230
mov rcx, qword [rsi + 0x88]
movsxd rax, edx
mov r8d, 3
lea rax, [rax + rax*2]
lea rax, [rcx + rax*8]
mov word [rax - 0x16], r8w
jmp 0x1401ea230
mov eax, dword [r13 + 0x38]
lea r12d, [rax + 1]
mov dword [r13 + 0x38], r12d
jmp 0x1401ea0b3
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov edx, 0xb4
movzx eax, word [rax + 0x18]
mov dword [rsp + 0x20], r15d
mov dword [rsp + 0x28], eax
call fcn.140182760
jmp 0x1401ea109
xor r9d, r9d
xor r8d, r8d
mov edx, 0xe
mov rcx, rax
mov dword [rsp + 0x20], 0
call fcn.1401816c0
mov dword [rsp + 0x70], eax
jmp 0x1401e9b8e
lea r8d, [rcx + 1]
mov byte [r13 + 0x1f], r8b
mov dword [r13 + rcx*4 + 0xd8], r12d
jmp 0x1401ea277
mov rax, qword [rcx + 0x88]
movsxd rsi, esi
lea rdx, [rsi + rsi*2]
lea rdx, [rax + rdx*8]
jmp 0x1401ea1da
mov r13, qword [rsp + 0xf0]
jmp 0x1401ea2aa
mov rdx, qword [rsp + 0x40]
mov r8d, ebp
call fcn.140184280
jmp 0x1401ea184
lea rcx, str.BINARY
xor eax, eax
xor edx, edx
xor edi, edi
mov qword [rsp + 0x68], rcx
jmp 0x1401e9f12
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov edx, 0x23
xor esi, esi
mov dword [rsp + 0x20], 0
call fcn.1401816c0
mov ebx, eax
jmp 0x1401ea060
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov r8d, ebp
mov edx, 0xb
mov dword [rsp + 0x20], 0
call fcn.1401816c0
mov ebx, eax
jmp 0x1401ea060
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x47
mov dword [rsp + 0x20], 0
call fcn.1401816c0
mov esi, eax
jmp 0x1401ea372
mov qword [rsp + 0x48], 0
mov rsi, 0xffffffffffffffff
xor eax, eax
xor ebx, ebx
jmp 0x1401e9d34