Function at 0x18027cb00
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rdi, r9
lea rsi, [0x180000000]
mov r11, rdx
mov rbx, rcx
nop
movzx edx, r8b
xor r10b, r10b
lea rax, [rdx + 1]
cmp rax, rdi
ja 0x18027ce47
movzx edx, byte [rdx + r11]
movzx r9d, byte [rdx + rsi + 0x4380a0]
test r9b, r9b
je 0x18027ce17
cmp r9b, 1
jne case.0x18027cb77.44
lea eax, [rdx - 0x26]
cmp eax, 0xcd
ja case.0x18027cb77.44
cdqe
movzx eax, byte [rsi + rax + 0x27ce78]
mov ecx, dword [rsi + rax*4 + 0x27ce5c]
add rcx, rsi
jmp rcx
or byte [rbx + 7], 8
jmp 0x18027cbde
or byte [rbx + 7], 0x20
mov byte [rbx + 0x19], 0xf3
jmp 0x18027cbde
or byte [rbx + 7], 0x10
mov byte [rbx + 0x19], 0xf2
jmp 0x18027cbde
movzx eax, byte [rbx]
and al, 0xf
cmp al, 2
jne 0x18027cbcb
lea eax, [rdx - 0x64]
cmp al, 1
jbe 0x18027cbcb
cmp dl, 0x3e
jne 0x18027cbbb
movzx eax, byte [rbx + 0x1a]
sub al, 0x64
cmp al, 1
jbe 0x18027cbbb
or byte [rbx + 7], 0x40
mov byte [rbx + 0x1a], dl
jmp 0x18027cbde
movzx ecx, byte [rbx + 0x1a]
lea eax, [rcx - 0x64]
cmp al, 1
jbe 0x18027cbde
cmp cl, 0x3e
je 0x18027cbde
or byte [rbx + 7], 0x40
mov byte [rbx + 0x1a], dl
jmp 0x18027cbde
or byte [rbx + 7], 2
jmp 0x18027cbde
or byte [rbx + 7], 4
movzx eax, byte [rbx + 6]
mov r10b, 1
test al, 0x10
je case.0x18027cb77.44
and al, 0xef
mov byte [rbx + 0x1c], 0
and dword [rbx + 0x24], 0xfffffff0
mov byte [rbx + 6], al
movzx ecx, byte [rbx]
movzx eax, cl
and al, 0xf
cmp al, 2
jne 0x18027cc45
cmp r9b, 3
jne 0x18027cc45
or byte [rbx + 6], 0x10
mov ecx, edx
shr ecx, 3
mov eax, edx
xor ecx, dword [rbx + 0x24]
shr eax, 1
and ecx, 1
xor ecx, dword [rbx + 0x24]
xor eax, ecx
mov byte [rbx + 0x1c], dl
and eax, 2
xor eax, ecx
lea ecx, [rdx + rdx]
xor ecx, eax
and ecx, 4
xor ecx, eax
lea eax, [rdx*8]
xor eax, ecx
and eax, 8
xor eax, ecx
mov dword [rbx + 0x24], eax
jmp 0x18027cc4a
test r10b, r10b
je 0x18027cc6f
inc byte [rbx + 0xc]
inc r8b
cmp byte [rbx + 0xc], 0xf
jbe 0x18027cb20
mov eax, 0x80000003
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
movzx edx, r8b
movzx eax, byte [rdx + r11]
cmp byte [rax + rsi + 0x4380a0], 2
jne 0x18027ce13
cmp al, 0x8f
jne 0x18027ccb3
mov r9, rdi
mov rdx, r11
mov rcx, rbx
call fcn.18027d0c0
cmp eax, 0x80000000
jb 0x18027ce17
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
cmp al, 0xc5
jne 0x18027cdac
lea rax, [rdx + 2]
cmp rax, rdi
ja 0x18027ce47
and cl, 0xf
cmp cl, 2
je 0x18027cce6
movzx eax, r8b
movzx ecx, byte [rax + r11 + 1]
and cl, 0xc0
cmp cl, 0xc0
jne 0x18027ce17
movzx eax, byte [rbx + 7]
test al, 0x32
jne 0x18027cd97
movzx ecx, byte [rbx + 6]
test cl, 0x10
jne 0x18027cd97
test al, 8
jne 0x18027cd97
or cl, 0x20
mov byte [rbx + 3], 2
mov byte [rbx + 6], cl
movzx ecx, r8b
movzx eax, byte [rcx + r11]
mov byte [rbx + 0x20], al
movzx eax, byte [rcx + r11 + 1]
mov ecx, dword [rbx + 0x24]
mov edx, eax
mov byte [rbx + 0x21], al
and ecx, 0xfffff0ff
add byte [rbx + 0xc], 2
bts ecx, 7
shr eax, 7
not eax
add eax, eax
xor eax, ecx
and eax, 2
xor eax, ecx
mov ecx, edx
shr ecx, 3
and eax, 0xfffc3fff
not ecx
and ecx, 0xf
shl ecx, 0xe
xor ecx, eax
mov eax, edx
shl edx, 5
and eax, 4
shl eax, 0xa
and ecx, 0xffffcfff
or ecx, eax
xor edx, ecx
and edx, 0x60
xor edx, ecx
cmp byte [rbx + 0xc], 0xf
mov dword [rbx + 0x24], edx
jbe 0x18027ce17
mov eax, 0x80000003
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov eax, 0x80000007
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
cmp al, 0xc4
jne 0x18027cdd5
mov r9, rdi
mov rdx, r11
mov rcx, rbx
call fcn.18027cf50
cmp eax, 0x80000000
jb 0x18027ce17
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
cmp al, 0x62
jne 0x18027cdfe
mov r9, rdi
mov rdx, r11
mov rcx, rbx
call fcn.18027c820
cmp eax, 0x80000000
jb 0x18027ce17
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov eax, 0x80000101
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
and byte [rbx + 3], 0xf0
movzx eax, byte [rbx + 0xd]
movzx ecx, byte [rbx + 0x12]
and al, 0xf
xor cl, byte [rbx + 0xc]
and cl, 0xf
xor cl, byte [rbx + 0x12]
mov byte [rbx + 0x12], cl
shl cl, 4
or cl, al
mov byte [rbx + 0xd], cl
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rbx, qword [rsp + 0x30]
mov eax, 0x80000001
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret