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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
xor ebx, ebx
mov rdi, rcx
cmp byte [rdx], 0x99
mov rsi, rdx
mov rcx, qword [rcx]
mov r14d, ebx
mov qword [rsp + 0x88], rcx
mov r12d, ebx
jne 0x18006bbb1
mov rax, qword [rdx + 0x20]
test rax, rax
je 0x18006bbb1
lea r9d, [rbx + 2]
cmp dword [rax], r9d
jne 0x18006bbb1
mov rdx, qword [rdx + 8]
mov rax, rdx
test rdx, rdx
jne 0x18006b8fe
mov eax, ebx
jmp 0x18006b910
cmp byte [rdx], bl
je 0x18006b909
inc rax
cmp byte [rax], bl
jne 0x18006b902
sub eax, edx
and eax, 0x3fffffff
mov byte [rsp + 0x28], bl
mov r8d, eax
mov byte [rsp + 0x20], 1
call fcn.180052ea4
mov rbp, rax
test rax, rax
je 0x18006bbb1
test byte [rax + 2], 4
je 0x18006bbb1
mov rdx, qword [rax + 8]
lea rcx, [rsp + 0x80]
mov r8d, 3
call fcn.1800ac6d0
movzx ecx, word [rbp + 2]
mov rax, qword [rsp + 0xa0]
mov rbp, qword [rsi + 0x20]
shr ecx, 3
not ecx
and ecx, 1
mov dword [rax], ecx
mov rax, qword [rbp + 8]
mov rsi, qword [rax + 0x28]
cmp byte [rsi], 0x9a
jne 0x18006bbb1
mov rcx, rsi
call fcn.1800455cc
cmp al, 0x42
jne 0x18006bbb1
mov rax, qword [rsi + 0x40]
test byte [rax + 0x48], 0x10
jne 0x18006bbb1
mov rcx, qword [rbp + 8]
mov rcx, qword [rcx]
call fcn.1800456dc
mov r15, rax
mov r13b, byte [rax]
cmp r13b, 0x87
jne 0x18006ba52
mov rcx, qword [rdi + 0x210]
movsx rbp, word [rax + 0x30]
test rcx, rcx
je 0x18006ba29
imul r12, rbp, 0x38
add r12, qword [rcx + 0x68]
test byte [r12 - 0x30], 1
jne 0x18006ba29
mov rcx, qword [rcx]
call fcn.18003718c
mov rsi, rax
test rax, rax
je 0x18006b9fe
lea rdx, [r12 - 0x38]
mov rcx, rax
call fcn.180036c3c
mov r8b, 1
mov dl, 0x41
mov rcx, rsi
call fcn.18003c050
mov r12, rsi
test rsi, rsi
je 0x18006ba2c
movzx eax, word [rsi + 8]
lea rcx, [0x1800f9cd0]
and eax, 0x1f
cmp byte [rax + rcx], 3
jne 0x18006ba2c
mov dl, 1
mov rcx, rsi
call fcn.180037158
mov r14, rax
jmp 0x18006ba2c
mov r12, rbx
mov rdx, qword [rdi + 0x10]
cmp ebp, 0x20
jle 0x18006ba3e
or dword [rdx + 0x104], 0xffffffff
jmp 0x18006ba60
mov ecx, dword [rdx + 0x104]
lea eax, [rbp - 1]
bts ecx, eax
mov dword [rdx + 0x104], ecx
jmp 0x18006ba60
cmp r13b, 0x61
jne 0x18006bb9f
mov r14, qword [rax + 8]
test r14, r14
je 0x18006bb9f
movsx ecx, byte [r14]
mov edx, ebx
test ecx, ecx
je 0x18006bb9c
movsx r9d, byte [rsp + 0x80]
mov r8, r14
cmp ecx, r9d
je 0x18006baad
movsx eax, byte [rsp + 0x81]
cmp ecx, eax
je 0x18006baad
movsx eax, byte [rsp + 0x82]
cmp ecx, eax
je 0x18006baad
inc r8
inc edx
movsx ecx, byte [r8]
test ecx, ecx
jne 0x18006ba83
test edx, edx
je 0x18006bb9c
movsxd rsi, edx
cmp byte [rsi + r14 - 1], 0xff
je 0x18006bb9c
cmp ecx, r9d
jne 0x18006bad5
mov eax, 1
cmp byte [rsi + r14 + 1], bl
je 0x18006bad7
mov eax, ebx
mov rbp, qword [rsp + 0x98]
mov r8, r14
mov rcx, qword [rsp + 0x88]
mov edx, 0x61
mov dword [rbp], eax
call fcn.180045c8c
mov rcx, rax
test rax, rax
je 0x18006bb06
mov rax, qword [rax + 8]
mov byte [rsi + rax], bl
mov rax, qword [rsp + 0x90]
mov qword [rax], rcx
cmp r13b, 0x87
jne 0x18006bb9f
movsx eax, word [r15 + 0x30]
mov rsi, qword [rdi + 0x10]
cmp eax, 0x20
jle 0x18006bb32
or dword [rsi + 0x104], 0xffffffff
jmp 0x18006bb43
mov ecx, dword [rsi + 0x104]
dec eax
bts ecx, eax
mov dword [rsi + 0x104], ecx
cmp dword [rbp], ebx
je 0x18006bb9f
mov rax, qword [r15 + 8]
cmp byte [rax + 1], bl
je 0x18006bb9f
mov al, byte [rdi + 0x1f]
test al, al
jne 0x18006bb60
inc dword [rdi + 0x54]
mov ebp, dword [rdi + 0x54]
jmp 0x18006bb6c
dec al
movzx eax, al
mov byte [rdi + 0x1f], al
mov ebp, dword [rdi + rax*4 + 0x24]
mov r8d, ebp
mov rdx, r15
mov rcx, rdi
call fcn.1800482cc
mov eax, dword [rsi + 0x3c]
lea ecx, [rax - 1]
cmp eax, ecx
jbe 0x18006bb90
mov rax, qword [rsi + 8]
lea rcx, [rcx + rcx*2]
mov dword [rax + rcx*8 + 0xc], ebx
mov edx, ebp
mov rcx, rdi
call fcn.18004a1e8
jmp 0x18006bb9f
mov r14, rbx
mov rcx, r12
call fcn.18003757c
test r14, r14
setne bl
mov eax, ebx
jmp 0x18006bbb3
xor eax, eax
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret