Function at 0x18003abd0
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
xor edi, edi
movzx esi, dl
test byte [rcx + 0x3aa], 0x10
mov rbx, rcx
mov dword [rcx + 0x386], edi
mov dword [rcx + 0xac], edi
jne case.0x18003ac54.5
call fcn.18003bbd0
movzx edx, ax
mov rcx, rbx
call fcn.18003b710
movzx edx, word [rbx + 0xf0]
mov rcx, rbx
mov word [rsp + 0x40], dx
call fcn.18003b710
movzx edx, word [rbx + 0x60]
mov rcx, rbx
call fcn.18003b710
cmp esi, 0x77
ja case.0x18003ac54.5
lea r8, [0x180000000]
movzx eax, byte [r8 + rsi + 0x3b320]
mov ecx, dword [r8 + rax*4 + 0x3b2e0]
add rcx, r8
jmp rcx
movzx eax, word [rbx + 0xa9fa]
mov edx, edi
or ax, word [rbx + 0xa9f8]
movzx ecx, byte [rbx + 0x41]
cmp ax, 0x3f
cmovne dx, ax
cmp ecx, 0x3300
ja 0x18003ae75
cmp ecx, 0x68
ja case.0x18003ac9b.24
movzx eax, byte [r8 + rcx + 0x3b3fc]
mov ecx, dword [r8 + rax*4 + 0x3b398]
add rcx, r8
jmp rcx
mov byte [rbx + 0x40], 0xff
and dword [rbx + 0x6c], 0xfe
jmp case.0x18003ac9b.3
movzx eax, byte [rbx + 0x40]
lea rdx, [rbx + rax*4]
movzx ecx, word [rdx + 0xa974]
movzx r8d, word [rdx + 0xa976]
movzx eax, cx
or ax, r8w
jne 0x18003ace9
mov eax, 0x678
mov word [rbx + 0x4c], ax
mov eax, 0x1234
mov word [rbx + 0xb0], ax
movzx ecx, word [rdx + 0xa974]
mov word [rbx + 0x4c], cx
mov word [rbx + 0xb0], r8w
jmp 0x18003aed6
mov dword [rbx + 0x40], 2
or dword [rbx + 0x6c], 1
jmp case.0x18003ac9b.3
cmp byte [rbx + 0xad6c], 0xcf
jne case.0x18003ac54.5
jmp case.0x18003ac9b.3
cmp byte [rbx + 0x48], 0xff
jne case.0x18003ac54.5
jmp case.0x18003ac9b.3
mov eax, 0x80
mov word [rbx + 0x4c], ax
mov eax, 0x1000
mov word [rbx + 0xb0], ax
jmp case.0x18003ac9b.3
mov eax, 0x321
jmp 0x18003ad30
mov eax, 0x26
jmp 0x18003ad30
mov eax, 0xffff
mov word [rbx + 0x40], ax
jmp case.0x18003ac9b.3
mov eax, 0xffff
cmp word [rbx + 0x4c], ax
jne case.0x18003ac54.5
mov eax, 0x10
mov word [rbx + 0x4c], ax
mov eax, 8
mov word [rbx + 0x40], ax
or dword [rbx + 0x6c], 1
jmp case.0x18003ac9b.3
cmp byte [rbx + 0x40], 1
movzx edi, dx
je 0x18003aed6
mov byte [rbx + 0x48], 0x2f
jmp 0x18003aed6
cmp byte [rbx + 0x40], 2
jb case.0x18003ac54.5
mov dword [rbx + 0x40], 1
or dword [rbx + 0x6c], 1
jmp case.0x18003ac9b.3
mov eax, 0x1000
mov word [rbx + 0x4c], ax
jmp case.0x18003ac9b.3
movzx eax, word [rbx + 0xf0]
jmp case.0x18003ac9b.3
movzx eax, byte [rbx + 0x48]
test al, 0xd7
jne case.0x18003ac54.5
cmp al, 0x28
je case.0x18003ac54.5
mov byte [rbx + 0x40], al
jmp case.0x18003ac9b.3
mov eax, 0x7ba
mov word [rbx + 0x44], ax
mov eax, 0x401
mov word [rbx + 0x48], ax
jmp case.0x18003ac9b.3
mov ecx, 0xfff
mov eax, 0x7ba
add ax, word [rbx + 0x44]
and ax, cx
mov ecx, 0x1f1
mov word [rbx + 0x44], ax
and ax, cx
mov word [rbx + 0x48], ax
jmp case.0x18003ac9b.3
cmp byte [rbx + 0x45], 0x18
ja case.0x18003ac54.5
cmp byte [rbx + 0x44], 0x3c
ja case.0x18003ac54.5
cmp byte [rbx + 0x49], 0x3c
ja case.0x18003ac54.5
cmp byte [rbx + 0x48], 0x64
ja case.0x18003ac54.5
mov byte [rbx + 0x40], 0xff
jmp case.0x18003ac9b.3
mov eax, 6
mov byte [rbx + 0x4c], dil
mov word [rbx + 0x40], ax
mov word [rbx + 0x44], di
jmp case.0x18003ac9b.3
mov byte [rbx + 0x40], dil
jmp case.0x18003ac9b.3
sub ecx, 0x3305
je 0x18003aecf
sub ecx, 0x24fb
je 0x18003aec2
sub ecx, 2
je 0x18003aeb5
cmp ecx, 0xdff
je 0x18003ae9f
mov rcx, rbx
call fcn.180031fb0
jmp case.0x18003ac54.5
mov eax, 0x1b5
mov word [rbx + 0x4c], ax
mov word [rbx + 0x48], ax
and dword [rbx + 0x6c], 0xfe
jmp case.0x18003ac9b.3
mov byte [rbx + 0x40], dil
and dword [rbx + 0x6c], 0xfe
jmp case.0x18003ac9b.3
mov word [rbx + 0x40], di
and dword [rbx + 0x6c], 0xfe
jmp case.0x18003ac9b.3
mov byte [rbx + 0x48], 2
movzx edi, dx
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
movzx edx, di
mov rcx, rbx
call fcn.180031fb0
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
cmp byte [rbx + 0xad64], 0xcf
je case.0x18003ac54.2
mov rcx, rbx
call fcn.180029d70
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
movzx edx, byte [rbx + 0x41]
lea eax, [rdx - 3]
cmp eax, 0x17
ja case.0x18003af5f.5
cdqe
movzx eax, byte [r8 + rax + 0x3b474]
mov ecx, dword [r8 + rax*4 + 0x3b468]
add rcx, r8
jmp rcx
mov dword [rbx + 0x40], 0x5003
mov byte [rbx + 0x4d], dil
jmp case.0x18003ac54.2
cmp dl, 0x80
jb case.0x18003ac54.5
jmp case.0x18003ac54.2
movzx edx, byte [rbx + 0x41]
cmp edx, 0x12
ja case.0x18003af92.3
movzx eax, byte [r8 + rdx + 0x3b49c]
mov ecx, dword [r8 + rax*4 + 0x3b48c]
add rcx, r8
jmp rcx
mov byte [rbx + 0x41], 0xf7
jmp case.0x18003ac54.2
mov byte [rbx + 0x41], 0xf2
jmp case.0x18003ac54.2
cmp dl, 0x40
jb case.0x18003ac54.5
sub dl, 0x12
mov byte [rbx + 0x41], dl
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
xor edx, edx
mov rcx, rbx
call fcn.180031fb0
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
movzx edx, byte [rbx + 0x41]
cmp dl, 0x50
jb 0x18003afff
mov byte [rbx + 0x41], 1
or dword [rbx + 0x6c], 1
jmp case.0x18003ac54.2
cmp edx, 0x15
ja case.0x18003b018.4
movzx eax, byte [r8 + rdx + 0x3b4c4]
mov ecx, dword [r8 + rax*4 + 0x3b4b0]
add rcx, r8
jmp rcx
mov byte [rbx + 0x40], dil
jmp case.0x18003ac54.2
mov word [rbx + 0x40], di
and dword [rbx + 0x6c], 0xfe
jmp case.0x18003ac54.2
cmp byte [rbx + 0x40], 0x80
jb case.0x18003ac54.5
cmp dl, 0xd
je case.0x18003ac54.2
cmp dl, 0x10
jne case.0x18003ac54.5
jmp case.0x18003ac54.2
movzx ecx, byte [rbx + 0x41]
lea eax, [rcx - 0x45]
cmp al, 9
jbe case.0x18003ac54.2
lea eax, [rcx - 2]
cmp al, 0xcd
ja 0x18003b081
cmp cl, 2
je case.0x18003ac54.2
cmp cl, 0x84
je case.0x18003ac54.2
cmp cl, 0x88
jmp 0x18003af1f
mov byte [rbx + 0x41], 0x86
or dword [rbx + 0x6c], 1
jmp case.0x18003ac54.2
movzx eax, byte [rbx + 0x41]
test al, 0xc0
jne case.0x18003ac54.2
cmp al, 2
jmp 0x18003af1f
movzx eax, byte [rbx + 0x41]
test al, 0xf9
jne case.0x18003ac54.5
cmp al, 6
jne case.0x18003ac54.2
jmp case.0x18003ac54.5
movzx eax, byte [rbx + 0x41]
test al, al
je case.0x18003ac54.2
cmp al, 0x80
jae case.0x18003ac54.2
cmp al, 0x10
jmp 0x18003af1f
cmp byte [rbx + 0x41], 2
je case.0x18003ac54.2
cmp word [rbx + 0x40], 0xa
jne case.0x18003ac54.5
movzx eax, word [rbx + 0x4c]
mov word [rbx + 0x40], ax
jmp case.0x18003ac54.2
cmp byte [rbx + 0x41], 3
je case.0x18003ac54.2
mov eax, 0x400
cmp word [rbx + 0x40], ax
jmp 0x18003af1f
movzx ecx, word [rbx + 0xa976]
movzx edx, word [rbx + 0xa974]
movzx eax, dx
or ax, cx
je case.0x18003ac54.2
mov dword [rbx + 0x60], edx
mov rax, rcx
mov word [rbx + 0xf0], cx
mov byte [rbx + 0xf5], 3
mov dword [rbx + 0xf6], 1
mov dword [rbx + 0xfa], 1
mov byte [rbx + 0xfe], 3
mov dword [rbx + 0xff], 1
mov qword [rbx + 0x104], 1
mov dword [rbx + 0x10c], 1
mov dword [rbx + 0x110], 1
shl rax, 4
mov qword [rbx + 0x114], rax
mov eax, 0xffff
mov dword [rbx + 0x11c], eax
mov qword [rbx + 0x120], rax
mov qword [rbx + 0x128], rdi
and dword [rbx + 0x70], 0xfffafcff
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
movzx ecx, word [rbx + 0xa97a]
movzx edx, word [rbx + 0xa978]
jmp 0x18003b11d
movzx edx, word [rbx + 0xa980]
movzx ecx, word [rbx + 0xa982]
movzx eax, dx
or ax, cx
je 0x18003b270
mov dword [rbx + 0x60], edx
mov eax, ecx
shl rax, 4
mov word [rbx + 0xf0], cx
mov byte [rbx + 0xf5], 3
mov dword [rbx + 0xf6], 1
mov dword [rbx + 0xfa], 1
mov byte [rbx + 0xfe], 3
mov dword [rbx + 0xff], 1
mov qword [rbx + 0x104], 1
mov qword [rbx + 0x114], rax
mov eax, 0xffff
mov dword [rbx + 0x11c], eax
mov qword [rbx + 0x120], rax
mov dword [rbx + 0x10c], 1
mov dword [rbx + 0x110], 1
mov qword [rbx + 0x128], rdi
and dword [rbx + 0x70], 0xfffafcff
jmp 0x18003afd2
mov rax, qword [rbx + 0x34b]
cmp byte [rax], 0xcc
jne 0x18003b2a8
cmp byte [rax + 1], 0xcc
jne 0x18003b2a8
mov rcx, qword [rbx + 0x39a]
nop dword [rax]
inc dword [rbx + 0x60]
inc rax
mov qword [rbx + 0x34b], rax
cmp rax, rcx
ja 0x18003b2a8
cmp byte [rax + 1], 0xcc
je 0x18003b290
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.18003b4e0
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret