Function at 0x180076790
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, 0x78
mov rbx, qword [rcx + 0x10]
xor r12b, r12b
xor esi, esi
mov qword [rsp + 0x68], rbx
mov rdi, rdx
mov r15, rcx
test rbx, rbx
jne 0x180076807
call fcn.180025760
mov qword [r15 + 0x10], rax
mov rbx, rax
test rax, rax
je 0x1800767f0
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
mov edx, 0x99
mov rcx, rax
call fcn.1800258c0
cmp qword [r15 + 0x1c0], rsi
jne 0x180076807
mov rax, qword [r15]
test byte [rax + 0x4c], 8
jne 0x180076807
mov byte [r15 + 0x23], 1
mov r8d, dword [r15 + 0x5c]
xor r9d, r9d
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea eax, [r8 + 1]
lea edx, [r9 + 0x2c]
mov dword [r15 + 0x5c], eax
call fcn.1800258c0
movsxd rcx, dword [rdi + 0x14]
mov ebp, esi
mov rbx, qword [rdi + 0x20]
mov r13, rsi
mov r8, qword [rsp + 0xd0]
mov r14, qword [rsp + 0xe0]
mov dword [rsp + 0x44], eax
imul rax, rcx, 0x38
mov rdx, qword [r8 + 0x20]
movabs rcx, 0x8000000000000000
mov r14, qword [r14 + 0x40]
add rax, rbx
mov dword [rsp + 0xc0], esi
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], r14
cmp rbx, rax
jae 0x1800769a2
nop
mov eax, dword [r8 + 0x48]
cmp dword [rbx + 0xc], eax
jne 0x180076984
test byte [rbx + 0x1a], 2
je 0x180076984
mov rax, qword [rsp + 0xd8]
test qword [rbx + 0x28], rax
jne 0x180076984
movsxd rax, dword [rbx + 0x10]
test eax, eax
js 0x180076984
lea rdx, [rax + rax*2]
mov rax, qword [r8 + 0x20]
add rdx, rdx
mov rcx, qword [rax + 8]
movzx edi, byte [rcx + rdx*8 + 0x29]
mov rcx, qword [rbx]
call fcn.180039920
movsx ecx, al
sub ecx, 0x41
je 0x1800768f8
mov eax, esi
cmp ecx, 1
je 0x1800768e9
cmp dil, 0x43
setge al
jmp 0x1800768f0
cmp dil, 0x42
sete al
test eax, eax
je 0x18007697c
movsxd rcx, dword [rbx + 0x10]
cmp ecx, 0x40
jl 0x18007690d
movabs rdi, 0x8000000000000000
jmp 0x180076915
mov edi, 1
shl rdi, cl
test r12b, r12b
jne 0x180076945
mov rax, qword [rsp + 0x48]
lea rcx, [rcx + rcx*2]
add rcx, rcx
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.1800072d0
mov r12b, 1
test r13, rdi
jne 0x18007697c
mov rcx, qword [r15]
inc ebp
mov r8d, ebp
mov rdx, r14
call fcn.18007a2a0
test eax, eax
jne 0x180076ed3
movsxd rcx, dword [rsp + 0xc0]
or r13, rdi
mov rax, qword [r14 + 0x30]
mov dword [rsp + 0xc0], ebp
mov qword [rax + rcx*8], rbx
mov r8, qword [rsp + 0xd0]
add rbx, 0x38
cmp rbx, qword [rsp + 0x50]
jb 0x180076880
mov rdx, qword [rsp + 0x48]
movabs rcx, 0x8000000000000000
not r13
mov word [r14 + 0x2c], bp
or r13, rcx
mov word [r14 + 0x18], bp
mov dword [r14 + 0x28], 0x4241
mov r9, qword [r8 + 0x60]
movsx r8d, word [rdx + 0x42]
and r13, r9
mov qword [rsp + 0x60], r13
mov r13d, 0x3f
cmp r8d, r13d
jl 0x1800769e0
mov r11d, r13d
mov dword [rsp + 0x40], r13d
jmp 0x1800769ee
mov dword [rsp + 0x40], r8d
mov r11d, r8d
cmp si, r8w
jge 0x180076a1b
mov r10, qword [rsp + 0x60]
mov edx, esi
nop word [rax + rax]
mov ecx, ebp
mov eax, edx
inc ebp
bt r10, rax
cmovae ebp, ecx
inc edx
cmp edx, r11d
jl 0x180076a00
mov dword [rsp + 0xc0], ebp
test r9, r9
jns 0x180076a2d
add ebp, 0xffffffc1
add ebp, r8d
mov dword [rsp + 0xc0], ebp
mov rcx, qword [r15]
lea r12d, [rbp + 1]
movsx rbx, bp
inc rbx
movsx edi, bp
inc edi
lea eax, [rbx + rdi]
lea edx, [rax*2 + 9]
add edx, ebx
and edx, 0xfffffff8
lea eax, [rdx + rbx*8]
movsxd rbp, eax
lea rdx, [rbp + 0x68]
call fcn.180005180
mov r14, rax
test rax, rax
je 0x180076ed3
lea r8, [rbp + 0x68]
xor edx, edx
mov rcx, rax
call fcn.1800b2d40
mov r9d, dword [rsp + 0xc0]
lea rcx, [r14 + 0x68]
lea r8, [rcx + rbx*8]
mov qword [r14 + 0x40], rcx
mov word [r14 + 0x60], r12w
lea ecx, [rdi + 1]
mov rdi, qword [rsp + 0x48]
lea r12, str.BINARY
mov qword [r14 + 0x10], r8
mov ebp, esi
mov word [r14 + 0x5e], r9w
movsxd rdx, ecx
lea rax, [r8 + rdx*2]
mov qword [r14 + 8], rax
lea rax, [rax + rbx*2]
mov rbx, qword [rsp + 0xc8]
mov qword [r14 + 0x38], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x58], rsi
mov qword [rax + 0x20], r14
lea rax, str.auto_index
mov qword [r14], rax
mov qword [r14 + 0x18], rdi
mov rbx, qword [rbx + 0x20]
cmp rbx, qword [rsp + 0x50]
jae 0x180076c47
mov rcx, qword [rsp + 0xd0]
mov r12, rsi
mov qword [rsp + 0xc8], rsi
mov eax, dword [rcx + 0x48]
cmp dword [rbx + 0xc], eax
jne 0x180076c24
test byte [rbx + 0x1a], 2
je 0x180076c24
mov rax, qword [rsp + 0xd8]
test qword [rbx + 0x28], rax
jne 0x180076c24
movsxd rax, dword [rbx + 0x10]
test eax, eax
js 0x180076c24
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x20]
add rdx, rdx
mov rcx, qword [rax + 8]
movzx edi, byte [rcx + rdx*8 + 0x29]
mov rcx, qword [rbx]
call fcn.180039920
movsx ecx, al
sub ecx, 0x41
je 0x180076b7b
mov eax, esi
cmp ecx, 1
je 0x180076b6c
cmp dil, 0x43
setge al
jmp 0x180076b73
cmp dil, 0x42
sete al
test eax, eax
je 0x180076c1c
mov edx, dword [rbx + 0x10]
cmp edx, 0x40
jl 0x180076b8f
movabs rax, 0x8000000000000000
jmp 0x180076b99
mov ecx, edx
mov eax, 1
shl rax, cl
mov r8, qword [rsp + 0x58]
test r8, rax
jne 0x180076c1c
mov rcx, qword [rbx]
or r8, rax
mov rax, qword [r14 + 8]
mov qword [rsp + 0x58], r8
mov r8, qword [rsp + 0xc8]
mov word [r8 + rax], dx
mov rdx, qword [rcx + 0x10]
mov rdi, qword [rcx + 0x18]
test dword [rdx + 4], 0x100
jne 0x180076bee
test rdi, rdi
je 0x180076bde
test dword [rdi + 4], 0x100
jne 0x180076beb
mov rcx, r15
call fcn.180039790
test rax, rax
jne 0x180076c02
mov rdx, rdi
mov rcx, r15
call fcn.180039790
lea rcx, str.BINARY
test rax, rax
je 0x180076c05
mov rcx, qword [rax]
mov rax, qword [r14 + 0x40]
inc ebp
add qword [rsp + 0xc8], 2
mov qword [r12 + rax], rcx
add r12, 8
mov rcx, qword [rsp + 0xd0]
add rbx, 0x38
cmp rbx, qword [rsp + 0x50]
jb 0x180076b04
mov r9d, dword [rsp + 0xc0]
lea r12, str.BINARY
mov rdi, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x40]
mov ecx, esi
test r11d, r11d
jle 0x180076c91
mov r10, qword [rsp + 0x60]
movsxd rax, ebp
lea rdx, [rax*8]
lea r8, [rax + rax]
mov eax, ecx
bt r10, rax
jae 0x180076c8a
mov rax, qword [r14 + 8]
inc ebp
mov word [r8 + rax], cx
add r8, 2
mov rax, qword [r14 + 0x40]
mov qword [rdx + rax], r12
add rdx, 8
inc ecx
cmp ecx, r11d
jl 0x180076c67
mov r8, qword [rsp + 0xd0]
cmp qword [r8 + 0x60], rsi
jge 0x180076ce9
cmp r13w, word [rdi + 0x42]
jge 0x180076ce9
movsxd rax, ebp
lea rcx, [rax*8]
lea rdx, [rax + rax]
nop word [rax + rax]
mov rax, qword [r14 + 8]
lea rdx, [rdx + 2]
inc ebp
lea rcx, [rcx + 8]
mov word [rdx + rax - 2], r13w
inc r13d
mov rax, qword [r14 + 0x40]
mov qword [rcx + rax - 8], r12
movsx eax, word [rdi + 0x42]
cmp r13d, eax
jl 0x180076cc0
mov rax, qword [r14 + 8]
mov edx, 0xffffffff
mov r13, qword [rsp + 0xe0]
movsxd rcx, ebp
mov rbp, qword [rsp + 0x68]
mov dword [rsp + 0x20], esi
mov word [rax + rcx*2], dx
mov edx, 0x38
mov rax, qword [r14 + 0x40]
mov qword [rax + rcx*8], r12
mov rcx, rbp
mov eax, dword [r15 + 0x50]
mov dword [r13 + 8], eax
inc dword [r15 + 0x50]
mov r8d, dword [r13 + 8]
inc r9d
call fcn.1800258c0
mov rbx, qword [r15 + 0x10]
mov rdx, r14
mov rcx, r15
call fcn.18004d4e0
mov rcx, qword [rbx]
mov rdi, rax
mov rax, qword [rbx + 8]
test rax, rax
je 0x180076d90
cmp byte [rcx + 0x50], sil
jne 0x180076d90
movsxd rdx, dword [rbx + 0x3c]
lea r8, [rdx + rdx*2]
movsx edx, byte [rax + r8*8 - 0x17]
lea rbx, [rax + r8*8]
mov r8, qword [rax + r8*8 - 8]
call fcn.180025c40
test rdi, rdi
jne 0x180076d81
mov qword [rbx - 8], rsi
mov byte [rbx - 0x17], sil
jmp 0x180076d9d
mov qword [rbx - 8], rdi
mov byte [rbx - 0x17], 0xfa
jmp 0x180076d9d
mov r8, rdi
mov edx, 0xfffffffa
call fcn.180025c40
mov r8d, dword [r13 + 4]
xor r9d, r9d
mov rcx, rbp
mov dword [rsp + 0x20], esi
lea edx, [r9 + 0x6c]
call fcn.1800258c0
movzx ecx, byte [r15 + 0x1f]
mov edi, eax
test cl, cl
jne 0x180076dc9
inc dword [r15 + 0x54]
mov ebx, dword [r15 + 0x54]
jmp 0x180076dd7
dec cl
movzx eax, cl
mov byte [r15 + 0x1f], al
mov ebx, dword [r15 + rax*4 + 0x24]
mov r8d, dword [r13 + 4]
mov r9d, ebx
mov dword [rsp + 0x38], esi
mov rdx, r14
mov qword [rsp + 0x30], rsi
mov rcx, r15
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], esi
call fcn.18004fe80
mov r8d, dword [r13 + 8]
mov r9d, ebx
mov edx, 0x6e
mov dword [rsp + 0x20], esi
mov rcx, rbp
call fcn.1800258c0
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x180076e29
movsxd rax, dword [rbp + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 0x10
mov r8d, dword [r13 + 4]
lea r9d, [rdi + 1]
mov edx, 9
mov dword [rsp + 0x20], esi
mov rcx, rbp
call fcn.1800258c0
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x180076e58
movsxd rax, dword [rbp + 0x3c]
lea rcx, [rax + rax*2]
mov byte [rdx + rcx*8 - 0x15], 3
mov edx, dword [rbp + 0x3c]
cmp edx, edi
jbe 0x180076e6e
mov rax, qword [rbp + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rbp + 0x3c]
mov rax, qword [rbp + 0x30]
lea ecx, [rdx - 1]
mov dword [rax + 0x64], ecx
test ebx, ebx
je 0x180076eaf
movzx ecx, byte [r15 + 0x1f]
cmp cl, 8
jae 0x180076eaf
lea rax, [r15 + 0x88]
nop dword [rax]
cmp dword [rax + 0xc], ebx
je 0x180076eab
inc esi
add rax, 0x14
cmp esi, 0xa
jl 0x180076e90
mov dword [r15 + rcx*4 + 0x24], ebx
inc byte [r15 + 0x1f]
jmp 0x180076eaf
mov byte [rax + 6], 1
mov eax, dword [rsp + 0x44]
mov edx, dword [rbp + 0x3c]
cmp edx, eax
jbe 0x180076ec9
lea rcx, [rax + rax*2]
mov rax, qword [rbp + 8]
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rbp + 0x3c]
mov rax, qword [rbp + 0x30]
lea ecx, [rdx - 1]
mov dword [rax + 0x64], ecx
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret