Function at 0x18009d840
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
lea eax, [r9 - 0xf]
mov edi, r9d
mov dword [rsp + 0x48], eax
mov r14, r8
mov rbp, rdx
mov r15, rcx
cmp r9d, eax
jbe case.0x18009d8b4.46
mov r13, qword [rsp + 0xd0]
mov r12d, dword [rsp + 0xc8]
lea eax, [rdi - 0x2e]
lea rsi, [0x1800f22f8]
lea rdx, [0x180000000]
cmp eax, 0x20
ja case.0x18009d8b4.60
movzx eax, byte [rdx + rax + 0x9e324]
mov ecx, dword [rdx + rax*4 + 0x9e2e8]
add rcx, rdx
jmp rcx
mov rax, qword [r15]
cmp qword [r13 + 0x78], rax
ja case.0x18009d8b4.60
mov r8, qword [r13 + 0xa0]
xor edx, edx
xor r9d, r9d
lea ecx, [rdx + 0x64]
call fcn.1800473e0
mov eax, dword [rsp + 0x38]
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov eax, dword [r13]
mov dword [rsp + 0x38], eax
jmp case.0x18009d8b4.60
mov rsi, qword [rsp + 0x40]
mov rax, qword [rsi + 0x18]
test rax, rax
je 0x18009d930
nop word [rax + rax]
mov rsi, rax
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x18009d920
nop dword [rax]
mov ebx, 0x110
mov eax, ebx
sub eax, 0x10f
je 0x18009d969
cmp eax, 1
jne 0x18009d96d
mov rax, qword [rsi + 0x10]
lea r8, [r13 + 0x30]
mov r9d, 0x66
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x20], rsi
xor ecx, ecx
call fcn.180054790
jmp 0x18009d96d
mov rsi, qword [rsi + 0x20]
dec ebx
cmp ebx, 0x10e
ja 0x18009d935
mov qword [rsp + 0x40], rsi
test rsi, rsi
jne 0x18009d930
jmp case.0x18009d8b4.60
inc qword [r13 + 0x90]
jmp case.0x18009d8b4.60
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x40], rax
jmp case.0x18009d8b4.60
mov r8, qword [rsp + 0x50]
add r8, 8
cmp qword [r8], 0
je case.0x18009d8b4.60
lea rdx, [rsp + 0xc8]
mov byte [rsp + 0xc8], 0
mov ecx, 0x101
call fcn.1800585d0
jmp case.0x18009d8b4.60
mov rdx, qword [r13 + 0x90]
mov rcx, qword [r13 + 0x88]
mov rax, qword [r15]
mov qword [rcx + rdx*8], rax
jmp case.0x18009d8b4.60
test byte [r15 + 8], 1
je 0x18009da09
mov r8, rbp
lea rcx, [0x18046b904]
mov edx, 2
call qword [r14]
mov byte [rsp + 0x38], 1
jmp case.0x18009d8b4.60
mov r9, qword [r13 + 0xa0]
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], 0
mov ecx, 0xb2
call fcn.180076e60
jmp case.0x18009d8b4.60
mov rax, qword [r15]
lea rcx, [rax + rax*8]
mov rax, qword [r13 + 0x70]
lea rax, [rax + rcx*8]
mov qword [rsp + 0x50], rax
jmp case.0x18009d8b4.60
mov r8, qword [r13 + 0xa0]
xor edx, edx
xor r9d, r9d
lea ecx, [rdx + 0x64]
call fcn.1800473e0
jmp case.0x18009d8b4.60
mov eax, dword [r15]
dec eax
cmp eax, 7
ja case.0x18009da83.7
cdqe
mov ecx, dword [rdx + rax*4 + 0x9e348]
add rcx, rdx
jmp rcx
mov ebx, 0xc9
nop word [rax + rax]
cmp ebx, 0xc9
je 0x18009dac6
cmp ebx, 0x18f
je 0x18009daae
cmp ebx, 0x255
je 0x18009e224
jmp 0x18009db09
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x18009db09
mov rdx, qword [rcx + 0x10]
mov r8, rbp
mov rcx, qword [rcx]
call qword [r14]
jmp 0x18009db09
mov r8, qword [r15 + 0x10]
test r8, r8
je 0x18009db09
mov rax, qword [r14]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0xc8]
mov rax, qword [r13]
mov rdx, rbp
mov dword [rsp + 0x28], 0x6c
mov byte [rsp + 0xc8], 1
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x20], rax
call fcn.18001b040
add ebx, 0xc6
cmp ebx, 0x31b
jb 0x18009da90
mov edi, 0x31
cmp edi, 0x139
ja 0x18009dc4e
je 0x18009dc19
mov eax, edi
sub eax, 0x31
je 0x18009dc02
sub eax, 0x42
je 0x18009dbb6
sub eax, 0x42
je 0x18009db79
cmp eax, 0x42
jne 0x18009dcef
mov r8, rbp
lea edx, [rax - 0x41]
lea rcx, [0x180468aa8]
call qword [r14]
mov rax, qword [r15 + 0x20]
movsxd rcx, dword [rax + 8]
lea rbx, [rcx + rcx*2]
add rbx, rsi
mov qword [rsp + 0x58], rbx
jmp 0x18009dcef
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x18009db8f
mov rdx, qword [rcx + 0x10]
mov r8, rbp
mov rcx, qword [rcx]
call qword [r14]
cmp qword [r15 + 0x20], 0
jne 0x18009dcef
mov r8, rbp
lea rcx, [0x18046b908]
mov edx, 1
call qword [r14]
mov edi, 0x30
jmp case.0x18009d8b4.60
mov r8, qword [r15 + 0x10]
test r8, r8
je 0x18009dcef
mov rax, qword [r14]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0xc8]
mov rax, qword [r13]
mov rdx, rbp
mov dword [rsp + 0x28], 0x6c
mov byte [rsp + 0xc8], 1
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x20], rax
call fcn.18001b040
jmp 0x18009dcef
mov r8, rbp
lea rcx, [0x18046b910]
mov edx, 1
call qword [r14]
jmp 0x18009dcef
mov rbx, qword [rsp + 0x58]
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rbx + rdx], 0
jne 0x18009dc25
mov r8, rbp
mov rcx, rbx
call qword [r14]
mov r8, rbp
lea rcx, [0x180468aa8]
mov edx, 1
call qword [r14]
jmp 0x18009dcef
mov eax, edi
sub eax, 0x17b
je 0x18009dca1
sub eax, 0x42
je 0x18009dc83
sub eax, 0x42
je 0x18009dc6f
cmp eax, 0x42
je 0x18009e224
jmp 0x18009dcef
mov r8, rbp
lea rcx, [0x18046b908]
mov edx, 1
call qword [r14]
jmp 0x18009dcef
mov rax, qword [r15 + 0x20]
test byte [rax + 0xc], 1
je 0x18009dcef
mov r8, rbp
lea rcx, [0x18046b90c]
mov edx, 2
call qword [r14]
jmp 0x18009dcef
mov rax, qword [r15 + 0x20]
cmp qword [rax], 0
je 0x18009dcef
mov ebx, 0x8e
mov eax, ebx
sub eax, 0x8e
je 0x18009dcd2
cmp eax, 1
jne 0x18009dcde
mov rsi, qword [rsp + 0x60]
mov r8, rbp
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsi]
call qword [r14]
jmp 0x18009dcde
mov rax, qword [r15 + 0x20]
mov rcx, qword [rax]
mov qword [rsp + 0x60], rcx
inc ebx
cmp ebx, 0x90
jb 0x18009dcb0
lea rsi, [0x1800f22f8]
add edi, 0x42
cmp edi, 0x283
jb 0x18009db20
mov edi, 4
cmp edi, 4
je 0x18009dd16
cmp edi, 0x234
je 0x18009e224
jmp 0x18009dd51
cmp qword [r15 + 0x18], 0
je 0x18009dd51
mov ebx, 0x2e
mov eax, ebx
sub eax, 0x2d
je 0x18009dd39
cmp eax, 1
jne 0x18009dd4a
mov edx, eax
lea rcx, [0x18046a724]
jmp 0x18009dd44
mov rcx, qword [r15 + 0x18]
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov r8, rbp
call qword [r14]
dec ebx
cmp ebx, 0x2c
ja 0x18009dd22
add edi, 0x230
cmp edi, 0x460
jbe 0x18009dd03
lea rdx, [0x180000000]
mov eax, 0xaa
nop dword [rax + rax]
cmp eax, 0xaa
je 0x18009ddc4
add eax, 0x31
cmp eax, 0xdb
jb 0x18009dd70
mov ebx, 0x107
nop word [rax + rax]
mov eax, ebx
sub eax, 0x107
je 0x18009e0e9
sub eax, 1
je 0x18009ddfc
cmp eax, 1
jne 0x18009e132
mov r8, rbp
lea rcx, [0x180469180]
mov edx, eax
call qword [r14]
mov edi, 0x30
jmp case.0x18009d8b4.60
cmp qword [r15 + 0x18], 0
je 0x18009e224
mov r8, rbp
lea rcx, [0x180468664]
mov edx, 1
call qword [r14]
mov rcx, qword [r15 + 0x18]
mov r8, rbp
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx]
call qword [r14]
mov edi, 0x30
jmp case.0x18009d8b4.60
mov eax, dword [r15 + 4]
dec eax
cmp eax, 0xd
ja case.default.0x18009de15
mov ecx, dword [rdx + rax*4 + 0x9e368]
add rcx, rdx
jmp rcx
mov ebx, 0x2d
nop dword [rax]
mov eax, ebx
sub eax, 0x2d
je 0x18009de32
cmp eax, 1
je case.default.0x18009de15
jmp 0x18009de5d
mov rcx, qword [r15 + 0x20]
test rcx, rcx
je 0x18009de5d
mov rax, qword [r14]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rcx
mov r8, rbp
mov rcx, r13
mov qword [rsp + 0x30], rax
mov edx, 0xde
call fcn.1800b5b50
inc ebx
cmp ebx, 0x2f
jb 0x18009de20
mov edi, 0x113
nop dword [rax]
mov eax, edi
sub eax, 0x113
je 0x18009de87
cmp eax, 7
je case.default.0x18009de15
jmp 0x18009df0f
cmp qword [r15 + 0x20], 0
je 0x18009df0f
mov rax, qword [r14]
lea rdx, [rsp + 0x30]
mov r8, qword [r15 + 0x20]
mov r9, rbp
mov ecx, 0xf6
mov qword [rsp + 0x30], rax
call fcn.1800d9550
mov rax, qword [r15 + 0x20]
cmp qword [rax + 0x10], 0
je 0x18009df0f
mov ebx, 0x69
mov eax, ebx
sub eax, 0x68
je 0x18009dede
cmp eax, 1
jne 0x18009df08
mov r8, rbp
lea edx, [rax + 3]
lea rcx, str._of
call qword [r14]
jmp 0x18009df08
mov rax, qword [r14]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x30], rax
mov r8, rbp
mov rax, qword [r15 + 0x20]
mov edx, 0xde
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.1800b5b50
dec ebx
cmp ebx, 0x67
ja 0x18009dec0
add edi, 7
cmp edi, 0x121
jb 0x18009de70
mov edi, 0xf9
mov eax, edi
sub eax, 0xf7
je case.default.0x18009de15
sub eax, 1
je 0x18009df6b
cmp eax, 1
jne 0x18009dfd0
test al, r12b
je 0x18009dfd0
mov r8, rbp
lea edx, [rax + 5]
lea rcx, str.active
call qword [r14]
cmp r12d, 1
je 0x18009dfd0
mov edx, 4
lea rcx, str._
jmp 0x18009dfc4
test r12b, 2
je 0x18009dfb2
mov ebx, 0xc2
mov eax, ebx
sub eax, 0xc1
je 0x18009df90
cmp eax, 1
jne 0x18009dfa8
lea edx, [rax + 4]
lea rcx, str.valid
jmp 0x18009dfa2
test r12b, 4
je 0x18009dfa8
mov edx, 4
lea rcx, str._
mov r8, rbp
call qword [r14]
dec ebx
cmp ebx, 0xc0
ja 0x18009df76
test r12b, 4
je 0x18009dfd0
mov edx, 7
lea rcx, str.invalid
mov r8, rbp
call qword [r14]
nop word [rax + rax]
dec edi
cmp edi, 0xf6
ja 0x18009df23
mov eax, 0xa6
cmp eax, 0xa6
je 0x18009e015
add eax, 0x46
cmp eax, 0xec
jb 0x18009dfe3
mov esi, 0x11
nop dword [rax]
mov eax, esi
sub eax, 0x11
je 0x18009e053
cmp eax, 1
je case.default.0x18009de15
jmp 0x18009e0b7
cmp qword [r15 + 0x20], 0
je case.default.0x18009de15
mov ebx, 0x4c
cmp ebx, 0x4c
jne 0x18009e03b
mov rcx, qword [r15 + 0x20]
mov r8, rbp
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx]
call qword [r14]
add ebx, 0x1728
cmp ebx, 0x1728
jbe 0x18009e025
mov ebx, 0x108
jmp 0x18009e132
cmp qword [r15 + 0x20], 0
je 0x18009e0b7
mov rdi, qword [r15 + 0x20]
test rdi, rdi
je 0x18009e0b7
mov ebx, 0xcd
cmp ebx, 0xcd
je 0x18009e07e
cmp ebx, 0x185
jne 0x18009e0a4
mov rdi, qword [rdi + 0x28]
jmp 0x18009e0a4
mov rdx, qword [rdi + 0x10]
mov r8, rbp
mov rcx, qword [rdi]
call qword [r14]
cmp qword [rdi + 0x28], 0
je 0x18009e0a4
mov r8, rbp
lea rcx, [0x180468918]
mov edx, 2
call qword [r14]
add ebx, 0xb8
cmp ebx, 0x23d
jb 0x18009e068
test rdi, rdi
jne 0x18009e063
inc esi
cmp esi, 0x13
jb 0x18009e000
nop dword [rax]
nop word [rax + rax]
mov r8, rbp
lea rcx, str.UST
mov edx, 4
call qword [r14]
mov ebx, 0x108
jmp 0x18009e132
cmp qword [r15 + 0x18], 0
je 0x18009e120
mov r8, rbp
lea rcx, [0x18046a4a0]
mov edx, 1
call qword [r14]
mov rcx, qword [r15 + 0x18]
mov r8, rbp
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx]
call qword [r14]
nop dword [rax]
nop word [rax + rax]
mov r8, rbp
lea rcx, [0x18046b914]
mov edx, 1
call qword [r14]
inc ebx
cmp ebx, 0x10a
jae case.0x18009da83.6
lea rdx, [0x180000000]
jmp 0x18009dd90
mov ebx, 0x66
nop dword [rax]
mov eax, ebx
sub eax, 0x65
je 0x18009e18c
cmp eax, 1
jne 0x18009e16b
mov r8, rbp
lea rcx, [0x18046a4a0]
mov edx, eax
call qword [r14]
dec ebx
cmp ebx, 0x64
ja 0x18009e150
mov ebx, 3
cmp ebx, 3
je 0x18009e1c2
cmp ebx, 0x16
je 0x18009e1b0
cmp ebx, 0x29
je 0x18009e224
jmp 0x18009e1d4
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x18009e224
mov rdx, qword [rcx + 0x10]
mov r8, rbp
mov rcx, qword [rcx]
call qword [r14]
mov edi, 0x30
jmp case.0x18009d8b4.60
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x18009e1d4
mov rdx, qword [rcx + 0x10]
mov rcx, qword [rcx]
jmp 0x18009e1ce
mov edx, 2
lea rcx, [0x18046b928]
mov r8, rbp
call qword [r14]
add ebx, 0x13
cmp ebx, 0x3c
jb 0x18009e177
mov ebx, 0x99
mov eax, ebx
sub eax, 0x99
je 0x18009e1f1
cmp eax, 0x29
je 0x18009e224
jmp 0x18009e219
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x18009e207
mov rdx, qword [rcx + 0x10]
mov r8, rbp
mov rcx, qword [rcx]
call qword [r14]
mov r8, rbp
lea rcx, [0x18046b92c]
mov edx, 2
call qword [r14]
add ebx, 0x29
cmp ebx, 0xeb
jb 0x18009e1e1
mov edi, 0x30
jmp case.0x18009d8b4.60
mov rcx, qword [rsp + 0x50]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
mov rax, qword [r13 + 0x98]
cmp qword [r13 + 0x90], rax
jb case.0x18009d8b4.60
mov ebx, 0x77
mov eax, ebx
sub eax, 0x77
je 0x18009e28b
cmp eax, 1
jne 0x18009e2ce
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x18009e2ce
mov qword [r13 + 0x88], rax
mov rax, qword [rsp + 0x68]
mov qword [r13 + 0x98], rax
jmp 0x18009e2ce
mov rax, qword [r13 + 0x98]
mov r9d, 0x41
mov rdx, qword [r13 + 0x88]
xor r8d, r8d
lea rcx, [rax + rax]
lea rax, [rax*8]
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x30], rax
xor ecx, ecx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
call fcn.180070340
mov qword [rsp + 0x70], rax
inc ebx
cmp ebx, 0x79
jb 0x18009e260
dec edi
cmp edi, dword [rsp + 0x48]
jbe case.0x18009d8b4.46
jmp 0x18009d888