Function at 0x18000fa70
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x68]
sub rsp, 0x168
mov r14d, edx
xor r13d, r13d
mov r12, r9
mov rdx, rcx
mov ebx, r13d
lea eax, [r14 - 9]
mov dword [rsp + 0x48], eax
cmp r14d, eax
jbe 0x180010655
mov r15d, dword [rsp + 0x40]
lea rsi, [0x180000000]
mov edi, dword [rbp + 0xb8]
nop dword [rax]
lea eax, [r14 - 0x72]
cmp eax, 0x1e
ja case.0x18000faef.123
movzx eax, byte [rsi + rax + 0x107c0]
mov ecx, dword [rsi + rax*4 + 0x10798]
add rcx, rsi
jmp rcx
mov r15d, dword [r8]
mov dword [rsp + 0x3c], 1
jmp case.0x18000faef.123
xor r8d, r8d
xor edx, edx
mov ecx, 0x11b
call fcn.180005530
mov rcx, qword [r12 + 8]
mov rdi, rax
mov r9, qword [r12]
mov r8, rcx
sub r8, r9
mov edx, eax
sar r8, 4
mov byte [rbp + 0xb8], r13b
cmp rdx, r8
jae 0x18000fb49
shl rdx, 4
add rdx, r9
mov qword [r12 + 8], rdx
mov rbx, qword [r12]
jmp 0x180010639
jbe 0x18000fb9d
mov rax, qword [r12 + 0x10]
sub rax, r9
sar rax, 4
cmp rdx, rax
jbe 0x18000fb74
lea r8, [rbp + 0xb8]
mov rcx, r12
call fcn.180002220
mov rbx, qword [r12]
jmp 0x180010639
sub rdx, r8
je 0x18000fb98
nop dword [rax]
mov qword [rcx], r13
mov dword [rcx + 8], 0xffffffff
mov dword [rcx + 0xc], r13d
add rcx, 0x10
sub rdx, 1
jne 0x18000fb80
mov qword [r12 + 8], rcx
mov rbx, qword [r12]
jmp 0x180010639
movsxd rax, dword [0x18003ae30]
cmp eax, 5
ja case.default.0x18000fbc0
mov ecx, dword [rsi + rax*4 + 0x107e0]
add rcx, rsi
jmp rcx
mov ecx, dword [r8]
lea eax, [rcx - 0x7ae]
cmp eax, 0x14
ja 0x18000fd4c
mov r14, qword [rbp + 0xb0]
mov esi, 0xcc
cmp esi, 0xcc
je 0x18000fce6
cmp esi, 0x95d0
je 0x18000fc87
cmp esi, 0x12ad4
je 0x18000fc25
cmp esi, 0x1bfd8
jne 0x18000fcee
mov rdx, qword [rbp + 0xb0]
lea rsi, [0x180000000]
mov r14d, 0x72
jmp 0x180010640
mov dword [rsp + 0x38], 0xb
lea rcx, [rsp + 0x50]
movsd xmm0, qword [rsp + 0x38]
mov edx, 0xe6
movsd qword [rsp + 0x50], xmm0
mov dword [rsp + 0x58], r15d
call fcn.18001b580
dec eax
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov dword [r14], eax
mov dword [0x18003aec0], 0x3c
jmp 0x18000fcee
mov dword [rsp + 0x38], 4
lea rcx, [rsp + 0x60]
movsd xmm0, qword [rsp + 0x38]
mov edx, 0xe6
movsd qword [rsp + 0x60], xmm0
mov dword [rsp + 0x68], r15d
call fcn.18001b580
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x30], r13d
xor edx, edx
mov dword [rsp + 0x20], 0x64
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov dword [r12], eax
mov dword [rsp + 0x3c], 1
jmp 0x18000fcee
mov dword [rsp + 0x3c], 0x1e
add esi, 0x9504
cmp esi, 0x25410
jbe 0x18000fbe0
mov esi, 0x9a
nop word [rax + rax]
cmp esi, 0x9a
je 0x18000ff6f
cmp esi, 0x509c
jne 0x18000ffcc
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp - 0x40]
mov edx, 0xe6
movsd qword [rbp - 0x40], xmm0
mov dword [rbp - 0x38], r15d
call fcn.18001b580
dec eax
jmp 0x18000ff21
cmp ecx, 0x7c3
jl case.0x18000fbc0.5
cmp ecx, 0x7d7
jge 0x18000fe5f
mov r14, qword [rbp + 0xb0]
mov esi, 0xe0
nop dword [rax]
cmp esi, 0xe0
je 0x18000fdeb
cmp esi, 0x17b
je 0x18000fd91
cmp esi, 0x216
je 0x18000fc0c
jmp 0x18000fe48
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rsp + 0x70]
mov edx, 0xe6
movsd qword [rsp + 0x70], xmm0
mov dword [rsp + 0x78], r15d
call fcn.18001b580
dec eax
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov dword [r14], eax
mov dword [0x18003aec0], 0x3c
jmp 0x18000fe48
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp - 0x80]
mov edx, 0xe6
movsd qword [rbp - 0x80], xmm0
mov dword [rbp - 0x78], r15d
call fcn.18001b580
add eax, 6
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov dword [r12], eax
mov dword [rsp + 0x3c], 1
mov dword [rsp + 0x38], 0xb
add esi, 0x9b
cmp esi, 0x2b1
jb 0x18000fd70
jmp case.0x18000fbc0.5
mov esi, 0x90
nop dword [rax]
nop dword [rax + rax]
mov eax, esi
sub eax, 0x8e
je 0x18000ff01
sub eax, 1
je 0x18000fe91
cmp eax, 1
jne 0x18000feee
mov dword [rsp + 0x38], 3
jmp 0x18000fee6
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp - 0x70]
mov edx, 0xe6
movsd qword [rbp - 0x70], xmm0
mov dword [rbp - 0x68], r15d
call fcn.18001b580
add eax, 0xd
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov dword [r12], eax
mov dword [rsp + 0x38], 0xb
mov dword [rsp + 0x3c], 1
dec esi
cmp esi, 0x8d
ja 0x18000fe70
jmp case.0x18000fbc0.5
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp - 0x60]
mov edx, 0xe6
movsd qword [rbp - 0x60], xmm0
mov dword [rbp - 0x58], r15d
call fcn.18001b580
add eax, 6
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x30], r13d
xor edx, edx
mov dword [rsp + 0x20], 0x64
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov rdx, qword [rbp + 0xb0]
mov dword [rdx], eax
mov dword [0x18003aec0], 0x3c
lea rsi, [0x180000000]
mov r14d, 0x72
jmp 0x180010640
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp - 0x50]
mov edx, 0xe6
movsd qword [rbp - 0x50], xmm0
mov dword [rbp - 0x48], r15d
call fcn.18001b580
add eax, 6
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov dword [r12], eax
mov dword [rsp + 0x3c], 1
mov dword [rsp + 0x38], 0xb
add esi, 0x5002
cmp esi, 0xa004
jbe 0x18000fd10
mov esi, 0xa0
cmp esi, 0xa0
je 0x18001005e
cmp esi, 0x6720
je 0x18001000b
mov rdx, qword [rbp + 0xb0]
cmp esi, 0xcda0
je 0x18000ff53
jmp 0x1800100c1
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp - 0x30]
mov edx, 0xe6
movsd qword [rbp - 0x30], xmm0
mov dword [rbp - 0x28], r15d
call fcn.18001b580
dec eax
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov rdx, qword [rbp + 0xb0]
mov dword [rdx], eax
jmp 0x1800100c1
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp - 0x20]
mov edx, 0xe6
movsd qword [rbp - 0x20], xmm0
mov dword [rbp - 0x18], r15d
call fcn.18001b580
dec eax
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov rdx, qword [rbp + 0xb0]
mov dword [r12], eax
mov dword [rsp + 0x3c], 1
mov dword [rsp + 0x38], 0xb
add esi, 0x6680
cmp esi, 0x13380
jbe 0x18000ffe3
mov esi, 0x25
mov eax, esi
sub eax, 0x25
je 0x18001014f
sub eax, 0x38
je 0x1800100f2
cmp eax, 0x38
je 0x18000ff53
jmp 0x1800101a8
mov dword [rsp + 0x38], 0xb
lea rcx, [rbp - 0x10]
movsd xmm0, qword [rsp + 0x38]
mov edx, 0xe6
movsd qword [rbp - 0x10], xmm0
mov dword [rbp - 8], r15d
call fcn.18001b580
dec eax
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov rdx, qword [rbp + 0xb0]
mov dword [r12], eax
jmp 0x1800101a8
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp]
mov edx, 0xe6
movsd qword [rbp], xmm0
mov dword [rbp + 8], r15d
call fcn.18001b580
dec eax
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov rdx, qword [rbp + 0xb0]
mov dword [rsp + 0x3c], 1
mov dword [rdx], eax
add esi, 0x38
cmp esi, 0xcd
jb 0x1800100d8
mov r8, qword [rbp + 0xc0]
mov r14d, 0x106
nop dword [rax]
nop dword [rax + rax]
mov eax, r14d
sub eax, 0x106
je 0x180010353
sub eax, 0x4c
je 0x180010205
sub eax, 0x4c
je 0x1800101f6
cmp eax, 0x4c
je 0x18000fc0c
jmp 0x180010484
mov dword [0x18003aec0], 0x3c
jmp 0x180010484
cmp dword [r8], 0x7dd
jl 0x18001029a
mov esi, 0x10c
mov eax, esi
sub eax, 0x10a
je 0x18001023a
sub eax, 1
je 0x180010230
cmp eax, 1
jne 0x18001028b
mov dword [rsp + 0x3c], eax
jmp 0x18001028b
mov dword [rsp + 0x38], 0xb
jmp 0x18001028b
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp + 0x10]
mov edx, 0xe6
movsd qword [rbp + 0x10], xmm0
mov dword [rbp + 0x18], r15d
call fcn.18001b580
dec eax
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov rdx, qword [rbp + 0xb0]
mov dword [rdx], eax
dec esi
cmp esi, 0x109
ja 0x180010217
jmp 0x180010484
mov r12, qword [rbp + 0xb0]
mov esi, 0xba
cmp esi, 0xba
je 0x18001032d
cmp esi, 0x2e8
je 0x180010319
cmp esi, 0x516
jne 0x180010335
movsd xmm0, qword [rsp + 0x38]
lea r8, [rbp + 0x20]
mov r9d, 0xf0
movsd qword [rbp + 0x20], xmm0
xor edx, edx
mov dword [rbp + 0x28], r15d
xor ecx, ecx
call fcn.180023ba0
sub eax, 3
mov dword [rsp + 0x30], r13d
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x20], 0x64
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov r8, qword [rbp + 0xc0]
mov dword [r12], eax
jmp 0x180010335
mov r15d, dword [r8]
add r15d, 0xeb1
mov dword [rsp + 0x3c], 1
jmp 0x180010335
mov dword [rsp + 0x38], 7
add esi, 0x22e
cmp esi, 0x68a
jbe 0x1800102a6
mov r12, qword [rbp + 0xc8]
jmp 0x180010484
cmp dword [r8], 0x7d5
jl 0x1800103e7
mov esi, 0xa7
cmp esi, 0xa7
je 0x1800103c4
cmp esi, 0x5bfb
jne 0x1800103d4
movsd xmm0, qword [rsp + 0x38]
lea rcx, [rbp + 0x30]
mov edx, 0xe6
movsd qword [rbp + 0x30], xmm0
mov dword [rbp + 0x38], r15d
call fcn.18001b580
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x30], 5
xor edx, edx
mov dword [rsp + 0x20], 0x64
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov dword [r12], eax
jmp 0x1800103d4
mov dword [rsp + 0x3c], 1
mov dword [rsp + 0x38], 4
add esi, 0x5b54
cmp esi, 0xb6a8
jbe 0x180010365
jmp 0x180010484
mov esi, 0xb2
nop dword [rax]
cmp esi, 0xb2
je 0x180010458
cmp esi, 0x44d6
jne 0x180010472
movsd xmm0, qword [rsp + 0x38]
lea r8, [rbp + 0x40]
mov r9d, 0xf0
movsd qword [rbp + 0x40], xmm0
xor edx, edx
mov dword [rbp + 0x48], r15d
xor ecx, ecx
call fcn.180023ba0
lea r9, [rbp + 0xb8]
mov dword [rbp + 0xb8], eax
xor r8d, r8d
mov dword [rsp + 0x30], r13d
xor edx, edx
mov dword [rsp + 0x20], 0x64
lea rcx, [rsp + 0x30]
call fcn.18000d2d0
mov r8, qword [rbp + 0xc0]
mov dword [r12], eax
jmp 0x180010472
mov r15d, dword [r8]
add r15d, 0xeb0
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x3c], 0x1c
add esi, 0x4424
cmp esi, 0x8848
jbe 0x1800103f0
add r14d, 0x4c
cmp r14d, 0x236
jae 0x18001049d
mov r8, qword [rbp + 0xc0]
jmp 0x1800101d0
mov rdx, qword [rbp + 0xb0]
mov eax, 0xfb
nop dword [rax]
cmp eax, 0xfb
je 0x1800104c0
cmp eax, 0x18c
je case.default.0x18000fbc0
jmp 0x1800104c7
mov dword [r12], r13d
mov dword [rdx], r13d
add eax, 0x91
cmp eax, 0x21d
jb 0x1800104b0
mov dword [0x18003aec0], r13d
mov r14d, 0x72
lea rsi, [0x180000000]
jmp 0x180010640
mov dword [rsp + 0x38], 4
jmp case.0x18000faef.123
cmp dword [0x18003ae98], r13d
je case.0x18000faef.123
movsd xmm0, qword [r12]
lea r8, [rbp + 0x50]
mov eax, dword [r12 + 8]
mov edx, 0x8f
xor ecx, ecx
movsd qword [rbp + 0x50], xmm0
mov dword [rbp + 0x58], eax
call fcn.180007a90
movsxd rdx, eax
lea rcx, str._s_
mov rdx, qword [rsi + rdx*8 + 0x37c18]
call fcn.180025240
jmp 0x180010639
mov eax, r13d
test edi, edi
je 0x18001055e
nop dword [rax]
mov dword [rbx + 8], eax
add rbx, 0x10
add eax, 2
cmp eax, edi
jb 0x180010550
mov eax, 1
cmp edi, eax
jbe case.0x18000faef.123
nop dword [rax + rax]
mov dword [rbx + 8], eax
add rbx, 0x10
add eax, 2
cmp eax, edi
jb 0x180010570
jmp case.0x18000faef.123
cmp dword [0x18003ae88], r13d
jne case.0x18000faef.123
mov esi, 0x70
mov eax, esi
sub eax, 0x6f
je 0x1800105dc
cmp eax, 1
jne 0x180010627
cmp dword [0x18003ae44], r13d
je 0x1800105c5
mov r8d, dword [r12]
lea rcx, str._d._d.
mov edx, dword [r12 + 4]
call fcn.180025240
jmp 0x180010627
mov r8d, dword [r12 + 4]
lea rcx, str._d__d_
mov edx, dword [r12]
call fcn.180025240
jmp 0x180010627
cmp dword [0x18003ae9c], r13d
mov ecx, dword [r12 + 8]
je 0x180010600
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x64
sub ecx, eax
mov edx, ecx
lea rcx, [0x18002fbf8]
call fcn.180025240
cmp dword [0x18003ae94], r13d
mov ecx, 9
jne 0x180010621
mov ecx, 0x20
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_putchar]
dec esi
cmp esi, 0x6e
ja 0x180010595
lea rsi, [0x180000000]
mov rdx, qword [rbp + 0xb0]
mov r8, qword [rbp + 0xc0]
dec r14d
cmp r14d, dword [rsp + 0x48]
ja 0x18000fad0
mov eax, dword [rbp + 0xb8]
add rsp, 0x168
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
movsx ecx, byte [r12]
inc r12
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
add eax, 0xffffff9f
cmp eax, 0x13
ja case.0x180010692.98
movsxd rcx, eax
mov edx, dword [rsi + rcx*4 + 0x107f8]
add rdx, rsi
jmp rdx
movsx ecx, byte [r12]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
cmp eax, 0x6f
setne r13b
mov eax, r13d
jmp 0x18001065b
mov eax, 2
jmp 0x18001065b
mov eax, 6
jmp 0x18001065b
mov eax, 8
jmp 0x18001065b
mov eax, 9
jmp 0x18001065b
movsx ecx, byte [r12]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
sub eax, 0x68
je 0x1800106e6
cmp eax, 1
jne case.0x180010692.98
mov eax, 3
jmp 0x18001065b
mov eax, 0xb
jmp 0x18001065b
movsx ecx, byte [r12]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
cmp eax, 0x61
je 0x18001071e
cmp eax, 0x65
je 0x180010714
cmp eax, 0x69
jne case.0x180010692.98
mov eax, 7
jmp 0x18001065b
mov eax, 0xa
jmp 0x18001065b
mov eax, 4
jmp 0x18001065b
movsx ecx, byte [r12]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
cmp eax, 0x64
je 0x18001074b
cmp eax, 0x76
jne case.0x180010692.98
mov eax, 5
jmp 0x18001065b
mov eax, 0x12b
cmp eax, 0x12b
je 0x180010769
add eax, 5
cmp eax, 0x130
jb 0x180010750
mov eax, r13d
jmp 0x18001065b
movzx eax, byte [r12]
test al, al
je 0x180010783
cmp al, 0x31
je 0x18001078d
movzx eax, byte [r12 + 1]
inc r12
test al, al
jne 0x180010772
mov eax, 0xd
jmp 0x18001065b
mov eax, 0xc
jmp 0x18001065b