Function at 0x140099130
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, 0xc8
mov rbx, rcx
mov r14, rdx
xor ecx, ecx
mov r15, r9
mov r13b, cl
mov byte [rsp + 0x40], cl
mov qword [rsp + 0x58], rcx
xor r9d, r9d
mov rdi, qword [rbx + 0x10]
xor r8d, r8d
lea edx, [rcx + 0xf]
mov dword [rsp + 0x64], ecx
mov dword [rsp + 0x68], ecx
mov dword [rsp + 0x20], ecx
mov rcx, rdi
mov qword [rsp + 0xb0], rdi
call fcn.14004a230
mov rdx, qword [r15 + 0x60]
xor r11d, r11d
mov dword [rsp + 0x78], eax
mov r12d, r11d
mov rax, qword [r14]
mov r9d, r11d
mov r14, qword [r14 + 0x20]
movabs rcx, 0x8000000000000000
mov dword [rsp + 0x110], r11d
mov qword [rsp + 0x50], rdx
mov rbp, qword [rax + 8]
movzx eax, byte [r15 + 0x40]
imul r10, rax, 0x68
lea rax, [rbp + 8]
mov qword [rsp + 0x90], rbp
add rax, r10
mov qword [rsp + 0x70], r10
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x118]
mov rsi, qword [r10 + rbp + 0x28]
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x48], r11
movsxd rax, dword [rax + 0x14]
imul rax, rax, 0x38
add rax, r14
mov qword [rsp + 0x80], rax
cmp r14, rax
jae 0x14009941e
test byte [r14 + 0x12], 2
mov rsi, qword [r14]
jne 0x14009931a
movzx r8d, byte [r15 + 0x40]
xor r9d, r9d
mov rdx, rbp
mov rcx, rsi
call fcn.14005dcb4
xor edx, edx
test eax, eax
je 0x14009931a
test rsi, rsi
je 0x140099266
mov rcx, qword [rbx]
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
call fcn.14005cb78
mov rsi, rax
jmp 0x140099269
mov rsi, rdx
mov rcx, qword [rsp + 0x58]
mov rbp, qword [rbx]
test rcx, rcx
jne 0x140099280
mov qword [rsp + 0x58], rsi
jmp 0x14009931a
test rsi, rsi
je 0x14009931a
mov eax, dword [rsi + 4]
or eax, dword [rcx + 4]
and eax, 0x20000003
cmp eax, 0x20000000
jne 0x140099302
cmp byte [rbx + 0x134], 2
jae 0x140099302
mov r8, rcx
lea rdx, [fcn.14005ca9c]
mov rcx, rbx
call fcn.140080c6c
mov r8, rsi
lea rdx, [fcn.14005ca9c]
mov rcx, rbx
call fcn.140080c6c
lea rax, [0x140124e08]
mov esi, 1
xor r9d, r9d
mov qword [rsp + 0x98], rax
lea r8, [rsp + 0x98]
mov dword [rsp + 0xa0], esi
mov edx, 0x9b
mov rcx, rbp
call fcn.14005c13c
mov qword [rsp + 0x58], rax
jmp 0x14009931f
mov r8, rcx
mov r9, rsi
mov rcx, rbx
mov edx, 0x2c
call fcn.14005c32c
mov qword [rsp + 0x58], rax
mov esi, 1
mov r8, qword [rsp + 0x120]
mov rcx, r14
mov rdx, qword [rsp + 0xa8]
call fcn.1400990b8
xor r11d, r11d
test eax, eax
je 0x1400993e3
movsxd rcx, dword [r14 + 0x20]
movabs rax, 0x8000000000000000
shl rsi, cl
cmp ecx, 0x40
cmovge rsi, rax
test r13b, r13b
jne 0x140099390
mov rax, qword [rsp + 0x88]
lea rcx, [rcx + rcx*2]
lea rdx, str.automatic_index_on__s__s_
mov r9, qword [rax + 8]
mov r8, qword [rax]
mov r9, qword [r9 + rcx*8]
mov ecx, 0x11c
call fcn.14002d39c
xor r11d, r11d
mov r13d, 1
mov r9, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
test r9, rsi
jne 0x1400993ed
mov rcx, qword [rbx]
lea ebp, [r12 + 1]
mov r8d, ebp
call fcn.14009a2e4
xor r11d, r11d
test eax, eax
jne 0x1400999be
mov r9, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
or r9, rsi
movsxd rcx, r12d
mov r12d, ebp
mov dword [rsp + 0x110], ebp
mov qword [rsp + 0x48], r9
mov rax, qword [rdx + 0x48]
mov qword [rax + rcx*8], r14
jmp 0x1400993ed
mov r9, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x90]
add r14, 0x38
cmp r14, qword [rsp + 0x80]
jb 0x140099220
mov r10, qword [rsp + 0x70]
movabs rcx, 0x8000000000000000
mov rsi, qword [rsp + 0x88]
mov word [rdx + 0x3c], r12w
not r9
mov word [rdx + 0x18], r12w
mov dword [rdx + 0x38], 0x4241
cmp byte [rsi + 0x3f], 2
mov qword [rsp + 0x48], r9
je 0x140099450
mov rax, r9
mov r9, qword [r10 + rbp + 0x58]
or rax, rcx
and r9, rax
mov qword [rsp + 0x48], r9
movsx r8d, word [rsi + 0x36]
mov r13d, 0x3f
mov edx, r11d
cmp r13w, r8w
jge 0x140099469
mov r15d, r13d
jmp 0x140099477
mov dword [rsp + 0x60], r8d
mov r15d, r8d
cmp r11w, r8w
jge 0x1400994a8
mov edi, 1
mov ecx, r12d
mov eax, edx
inc r12d
bt r9, rax
cmovae r12d, ecx
add edx, edi
cmp edx, r15d
jl 0x14009947c
mov rdi, qword [rsp + 0xb0]
mov dword [rsp + 0x110], r12d
mov dword [rsp + 0x60], r15d
cmp qword [r10 + rbp + 0x58], r11
jge 0x1400994be
add r12d, 0xffffffc1
add r12d, r8d
mov dword [rsp + 0x110], r12d
mov rcx, qword [rbx]
lea r9, [rsp + 0x98]
mov edx, 1
xor r8d, r8d
add edx, r12d
call fcn.14006d9a4
xor r11d, r11d
mov r14, rax
test rax, rax
je 0x1400999be
mov rax, qword [rsp + 0x50]
mov r12d, r11d
mov qword [rax + 0x20], r14
lea rax, str.auto_index
mov qword [r14], rax
mov rax, qword [rsp + 0x118]
mov qword [r14 + 0x18], rsi
mov rsi, qword [rax + 0x20]
cmp rsi, qword [rsp + 0x80]
jae 0x14009961b
mov r13d, r11d
mov edi, r11d
mov r15d, r11d
mov r8, qword [rsp + 0x120]
mov rcx, rsi
mov rdx, qword [rsp + 0xa8]
call fcn.1400990b8
xor r11d, r11d
test eax, eax
je 0x1400995ee
mov ecx, dword [rsi + 0x20]
lea eax, [r11 + 1]
shl rax, cl
cmp ecx, 0x40
movabs rcx, 0x8000000000000000
cmovge rax, rcx
test r15, rax
jne 0x1400995ee
mov rbp, qword [rsi]
or r15, rax
mov rcx, qword [r14 + 8]
movzx eax, word [rsi + 0x20]
mov word [rdi + rcx], ax
test dword [rbp + 4], 0x400
je 0x140099591
mov rdx, qword [rbp + 0x18]
mov r8, qword [rbp + 0x10]
jmp 0x140099599
mov rdx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x18]
mov rcx, rbx
call fcn.14005b998
xor r11d, r11d
test rax, rax
je 0x1400995ae
mov rcx, qword [rax]
jmp 0x1400995b5
lea rcx, str.BINARY
mov rax, qword [r14 + 0x40]
inc r12d
add rdi, 2
mov qword [rax + r13], rcx
add r13, 8
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x1400995ee
call fcn.14005b458
mov ecx, dword [rsp + 0x40]
cmp al, 0x42
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
xor r11d, r11d
mov dword [rsp + 0x40], ecx
add rsi, 0x38
cmp rsi, qword [rsp + 0x80]
jb 0x140099525
mov rdi, qword [rsp + 0xb0]
mov r13d, 0x3f
mov r15d, dword [rsp + 0x60]
mov rbp, qword [rsp + 0x90]
mov ecx, r11d
mov r10d, 1
test r15d, r15d
jle 0x140099670
mov r9, qword [rsp + 0x48]
lea rsi, str.BINARY
movsxd rax, r12d
lea rdx, [rax*8]
lea r8, [rax + rax]
mov eax, ecx
bt r9, rax
jae 0x140099668
mov rax, qword [r14 + 8]
add r12d, r10d
mov word [r8 + rax], cx
add r8, 2
mov rax, qword [r14 + 0x40]
mov qword [rdx + rax], rsi
add rdx, 8
add ecx, r10d
cmp ecx, r15d
jl 0x140099644
mov rsi, qword [rsp + 0x70]
cmp qword [rsi + rbp + 0x58], r11
jge 0x1400996ca
mov r8, qword [rsp + 0x88]
cmp r13w, word [r8 + 0x36]
jge 0x1400996ca
movsxd rax, r12d
lea r9, str.BINARY
lea rcx, [rax*8]
lea rdx, [rax + rax]
mov rax, qword [r14 + 8]
add r12d, r10d
mov word [rdx + rax], r13w
add r13d, r10d
mov rax, qword [r14 + 0x40]
lea rdx, [rdx + 2]
mov qword [rcx + rax], r9
lea rcx, [rcx + 8]
movsx eax, word [r8 + 0x36]
cmp r13d, eax
jl 0x1400996a1
mov rax, qword [r14 + 8]
lea rdx, str.BINARY
mov r15, qword [rsp + 0x128]
mov r9d, dword [rsp + 0x110]
movsxd rcx, r12d
mov dword [rsp + 0x20], r11d
or word [rax + rcx*2], 0xffff
mov rax, qword [r14 + 0x40]
mov qword [rax + rcx*8], rdx
mov edx, 0x74
mov eax, dword [rbx + 0x34]
mov rcx, rdi
mov dword [r15 + 8], eax
add dword [rbx + 0x34], r10d
mov r8d, dword [r15 + 8]
inc r9d
call fcn.14004a230
mov rdx, r14
mov rcx, rbx
call fcn.14004ae44
mov rax, qword [rbx]
test dword [rax + 0x60], 0x80000
jne 0x140099773
cmp byte [rsp + 0x40], 0
je 0x140099773
mov rax, qword [rsp + 0x118]
mov r8, r15
mov rcx, rbx
mov rdx, qword [rax]
call fcn.140092ad0
and dword [rsp + 0x20], 0
mov eax, 1
add dword [rbx + 0x38], eax
mov r8d, 0x2710
mov r9d, dword [rbx + 0x38]
mov rcx, rdi
mov dword [r15 + 0x34], r9d
lea edx, [rax + 0x4c]
call fcn.14004a230
test byte [rsi + rbp + 0x48], 0x20
je 0x1400997bf
mov esi, dword [rsi + rbp + 0x3c]
xor r9d, r9d
and dword [rsp + 0x20], 0
xor r8d, r8d
mov rcx, rdi
lea edx, [r9 + 0x47]
call fcn.14004a230
mov rcx, qword [rsp + 0x70]
xor r9d, r9d
mov r8d, esi
mov dword [rsp + 0x68], eax
mov ecx, dword [rcx + rbp + 0x38]
lea edx, [r9 + 0xb]
mov dword [rsp + 0x20], ecx
mov rcx, rdi
call fcn.14004a230
mov edx, 0xc
jmp 0x1400997c8
mov esi, dword [r15 + 4]
mov edx, 0x24
and dword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, esi
mov rcx, rdi
call fcn.14004a230
mov r13, qword [rsp + 0x58]
xor ecx, ecx
mov ebp, eax
mov edx, 0x10
test r13, r13
je 0x140099815
dec dword [rbx + 0x44]
mov r9d, edx
mov eax, dword [rbx + 0x44]
mov rdx, r13
mov r8d, eax
mov dword [rsp + 0x64], eax
mov rcx, rbx
call fcn.140061c9c
mov rax, qword [rsp + 0x50]
bts dword [rax + 0x38], 0x11
xor ecx, ecx
mov al, byte [rbx + 0x1f]
test al, al
jne 0x140099829
mov eax, 1
add dword [rbx + 0x38], eax
mov esi, dword [rbx + 0x38]
jmp 0x140099838
sub al, 1
movzx eax, al
mov byte [rbx + 0x1f], al
mov esi, dword [rbx + rax*4 + 0xe8]
mov r8d, dword [r15 + 4]
mov r9d, esi
mov dword [rsp + 0x38], ecx
mov rdx, r14
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], ecx
mov rcx, rbx
call fcn.140071cb4
mov r8d, dword [r15 + 0x34]
mov r14d, eax
test r8d, r8d
je 0x14009988a
mov rax, qword [rsp + 0x50]
xor r9d, r9d
mov edx, 0xb7
movzx ecx, word [rax + 0x18]
mov dword [rsp + 0x28], ecx
mov rcx, rdi
mov dword [rsp + 0x20], r14d
call fcn.14004a2ac
mov r8d, dword [r15 + 8]
mov r9d, esi
and dword [rsp + 0x20], 0
mov edx, 0x8a
mov rcx, rdi
call fcn.14004a230
movsxd rax, dword [rdi + 0x90]
xor edx, edx
test eax, eax
jle 0x1400998c2
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], 0x10
test r13, r13
je 0x1400998d5
mov edx, dword [rsp + 0x64]
mov rcx, rdi
call fcn.14004a848
xor edx, edx
mov r13, qword [rsp + 0x90]
mov rax, qword [rsp + 0x70]
test byte [rax + r13 + 0x48], 0x20
je 0x140099955
mov rax, qword [rdi]
cmp byte [rax + 0x67], dl
je 0x1400998fb
lea rcx, [0x14014c2c0]
jmp 0x14009990f
movsxd rax, dword [rsp + 0x68]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
lea rcx, [rax + rcx*8]
lea eax, [r14 + r12]
mov edx, ebp
mov r14, qword [rsp + 0x70]
mov dword [rcx + 8], eax
mov rcx, rbx
mov eax, dword [r15 + 8]
mov r8d, dword [r15 + 4]
mov r9d, dword [r14 + r13 + 0x40]
mov dword [rsp + 0x20], eax
call fcn.140099004
and dword [rsp + 0x20], 0
xor r8d, r8d
mov r9d, ebp
mov rcx, rdi
lea edx, [r8 + 9]
call fcn.14004a230
and dword [r14 + r13 + 0x48], 0xffffffdf
jmp 0x14009998b
mov r8d, dword [r15 + 4]
lea r9d, [rbp + 1]
mov dword [rsp + 0x20], edx
mov rcx, rdi
mov edx, 0x27
call fcn.14004a230
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x14009998b
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], 3
mov edx, ebp
mov rcx, rdi
call fcn.14004aa5c
test esi, esi
je 0x1400999b2
cmp byte [rbx + 0x1f], 8
jae 0x1400999b2
movzx eax, byte [rbx + 0x1f]
mov dword [rbx + rax*4 + 0xe8], esi
mov eax, 1
add byte [rbx + 0x1f], al
mov edx, dword [rsp + 0x78]
mov rcx, rdi
call fcn.14004aa5c
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x1400999d3
mov rcx, qword [rbx]
mov rdx, rax
call fcn.14005c9a8
add rsp, 0xc8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret