Function at 0x18001e0f0
Capabilities:
Check for software breakpoints

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x18006af78]
xor rax, rsp
mov qword [rbp + 0x38], rax
mov r10, qword [rbp + 0x90]
lea r12d, [rcx + 0x83a]
mov rax, qword [rsp + 0x70]
xor ebx, ebx
mov r11d, dword [rsp + 0x40]
mov rdi, r9
mov qword [rbp - 0x30], r9
mov r14, r8
mov r9, qword [rsp + 0x70]
mov r13, rdx
mov rdx, qword [rsp + 0x70]
mov esi, ebx
mov qword [rbp - 0x80], r8
mov r15d, ecx
mov r8, qword [rbp + 0x98]
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x48], rdx
mov qword [rbp - 0x38], r9
mov dword [rsp + 0x58], ecx
mov qword [rsp + 0x60], r10
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x34], r11d
mov qword [rbp - 0x48], rax
cmp ecx, r12d
jae 0x18001e579
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x28], rax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x40], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x68], rax
mov eax, dword [rsp + 0x40]
mov dword [rbp - 0x68], eax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x20], rax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x18], rax
mov eax, dword [rsp + 0x40]
mov dword [rbp - 0x78], eax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x58], rax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x60], rax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x40], eax
mov r9d, dword [rsp + 0x40]
mov dword [rsp + 0x30], r9d
cmp r15d, 0x354
ja 0x18001e4e4
je 0x18001e4da
cmp r15d, 0x16e
ja 0x18001e4b8
je 0x18001e4ad
mov eax, r15d
sub eax, 0x43
je 0x18001e26c
sub eax, 0x89
je 0x18001e24a
cmp eax, 0x19
jne 0x18001e46a
mov eax, 0xfd
cmp eax, 0xfd
je 0x18001e4a0
add eax, 0x268b
cmp eax, 0x268b
jbe 0x18001e233
cmp qword [r13], 0
je 0x18001e264
cmp byte [r8 - 1], 0x21
jne 0x18001e264
mov dword [rbp - 0x78], 1
jmp 0x18001e46a
mov dword [rbp - 0x78], ebx
jmp 0x18001e46a
mov r8, qword [0x18006b058]
mov edx, 0x27
xor ecx, ecx
call fcn.180010700
test al, al
je 0x18001e451
nop word [rax + rax]
mov r14d, 0x3d
nop word [rax + rax]
mov eax, r14d
sub eax, 0x3c
je 0x18001e481
cmp eax, 1
jne 0x18001e429
cmp qword [rdi + 0x18], 0x10
mov rbx, rdi
jb 0x18001e2c2
mov rbx, qword [rdi]
mov r8, qword [rdi + 0x10]
test r8, r8
je 0x18001e429
mov edx, 0xa
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rdi, rax
test rax, rax
je 0x18001e425
sub rdi, rbx
cmp rdi, 0xffffffffffffffff
je 0x18001e425
mov ebx, 0x6d
nop word [rax + rax]
cmp ebx, 0x6d
je 0x18001e38d
cmp ebx, 0x12a
je 0x18001e351
cmp ebx, 0x1e7
jne 0x18001e413
mov rbx, qword [rbp - 0x50]
mov rax, rbx
mov rcx, qword [rbp + 0x38]
xor rcx, rsp
call fcn.18005d0c0
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rdx, qword [rbp - 0x30]
lea rax, [rdi + 1]
mov rcx, rdx
mov r8, qword [rdx + 0x10]
cmp r8, rax
cmovb rax, r8
cmp qword [rdx + 0x18], 0x10
jb 0x18001e371
mov rcx, qword [rdx]
sub r8, rax
mov qword [rdx + 0x10], r8
inc r8
lea rdx, [rcx + rax]
call sub.VCRUNTIME140.dll_memmove
mov byte [rbp - 0x50], 1
jmp 0x18001e413
mov rcx, qword [rbp - 0x30]
mov r8, rdi
mov qword [rbp + 0x28], 0
mov rdx, rcx
mov qword [rbp + 0x30], ILRemoveLastID
mov byte [rbp + 0x18], 0
cmp qword [rcx + 0x10], rdi
cmovb r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x18001e3be
mov rdx, qword [rcx]
lea rcx, [rbp + 0x18]
call fcn.180025880
mov rcx, qword [rsp + 0x60]
lea rdx, [rbp + 0x18]
or esi, 1
call fcn.180003700
mov rdx, qword [rbp + 0x30]
cmp rdx, 0x10
jb 0x18001e413
mov rcx, qword [rbp + 0x18]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001e40e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001e572
call fcn.18005cbb4
add ebx, 0xbd
cmp ebx, 0x2a4
jb 0x18001e300
mov rdi, qword [rbp - 0x30]
dec r14d
cmp r14d, 0x3b
ja 0x18001e2a0
mov r8, qword [0x18006b058]
mov edx, 0x27
xor ecx, ecx
call fcn.180010700
test al, al
jne 0x18001e290
mov r11d, dword [rsp + 0x34]
mov rdx, qword [rsp + 0x48]
mov r10, qword [rsp + 0x60]
mov r9d, dword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
add r15d, 0xa2
cmp r15d, r12d
jae 0x18001e5db
xor ebx, ebx
jmp 0x18001e1f0
mov rdx, qword [0x18006b058]
mov r8, rdi
mov ecx, 0xde
call fcn.18003e470
test al, al
jne 0x18001e429
nop dword [rax]
mov byte [rbp - 0x50], 0
mov rax, qword [rbp - 0x50]
jmp 0x18001e324
mov qword [rsp + 0x68], 1
jmp 0x18001e46a
cmp r15d, 0x210
je 0x18001e4d4
cmp r15d, 0x2b2
jne 0x18001e46a
mov rdx, rbx
mov qword [rsp + 0x48], rbx
jmp 0x18001e46a
mov qword [rbp - 0x60], rbx
jmp 0x18001e46a
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x40], rbx
jmp 0x18001e46a
cmp r15d, 0x5dc
ja 0x18001e540
je 0x18001e538
cmp r15d, 0x3f6
je 0x18001e52f
cmp r15d, 0x498
je 0x18001e522
cmp r15d, 0x53a
jne 0x18001e46a
mov qword [rbp - 0x20], rbx
mov rbx, qword [r10 + 0x238]
mov qword [rbp - 0x18], rbx
jmp 0x18001e46a
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x58], rbx
jmp 0x18001e46a
mov qword [rbp - 0x48], rbx
jmp 0x18001e46a
mov dword [rbp - 0x68], ebx
jmp 0x18001e46a
cmp r15d, 0x67e
je 0x18001e562
cmp r15d, 0x720
jne 0x18001e46a
mov r11d, ebx
mov dword [rsp + 0x34], ebx
jmp 0x18001e46a
mov dword [rsp + 0x40], ebx
mov r9d, ebx
mov dword [rsp + 0x30], ebx
jmp 0x18001e46a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov eax, dword [rsp + 0x40]
mov r13, qword [rsp + 0x70]
mov r15, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x70]
mov dword [rbp - 0x68], eax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x20], rax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x18], rax
mov eax, dword [rsp + 0x40]
mov dword [rbp - 0x78], eax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x58], rax
mov rax, qword [rsp + 0x70]
mov qword [rbp - 0x60], rax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x40], eax
mov r9d, dword [rsp + 0x40]
mov dword [rsp + 0x30], r9d
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x40], r15
mov qword [rsp + 0x68], rsi
jmp 0x18001e5f0
mov rsi, qword [rsp + 0x68]
mov r15, qword [rbp - 0x40]
mov r13, qword [rbp - 0x28]
mov r14, qword [rbp - 0x80]
mov ecx, dword [rsp + 0x58]
lea eax, [rcx + 0x774]
mov dword [rsp + 0x78], eax
cmp ecx, eax
jae 0x18001e31d
mov rbx, qword [rbp - 0x50]
mov r12, qword [rbp - 0x70]
mov qword [rbp - 0x50], rbx
nop
cmp ecx, 0x486
ja 0x18001f1ff
je 0x18001f0bb
cmp ecx, 0x2a9
ja 0x18001e6f1
je 0x18001e6e5
cmp ecx, 0xcc
je 0x18001e6bc
cmp ecx, 0x16b
je 0x18001e662
cmp ecx, 0x20a
jne 0x18001f1ce
cmp rsi, qword [r14]
jae 0x18001ef7a
jmp 0x18001f1ce
mov rdx, qword [r14]
mov ecx, 1
cmp rsi, rdx
jae 0x18001e6ad
nop
movzx eax, byte [r8 + rsi]
cmp al, 0xa
jne 0x18001e682
mov dword [rbp - 0x68], 1
jmp 0x18001e69c
cmp byte [r8 + rsi - 1], 0x5c
je 0x18001e69c
cmp al, 0x5b
jne 0x18001e692
inc ecx
jmp 0x18001e69c
cmp al, 0x5d
jne 0x18001e69c
dec ecx
test ecx, ecx
jle 0x18001e6a4
inc rsi
cmp rsi, rdx
jb 0x18001e670
mov eax, dword [rsp + 0x78]
mov qword [rsp + 0x68], rsi
mov rdx, qword [rsp + 0x48]
mov ecx, 0x16b
jmp 0x18001f1ce
cmp dword [rbp - 0x78], 0
je 0x18001e6d2
cmp qword [r10 + 0x78], 0
je 0x18001ef7a
jmp 0x18001f1ce
cmp qword [r10 + 0x88], 0
jne 0x18001f1ce
jmp 0x18001ef7a
mov qword [rbp - 0x70], rsi
mov r12, rsi
jmp 0x18001f1ce
cmp ecx, 0x348
je 0x18001f0ae
cmp ecx, 0x3e7
jne 0x18001f1ce
mov r10, qword [rbp - 0x80]
xor edi, edi
cmp rsi, qword [r10]
jae 0x18001e770
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r8 + rsi]
lea r9, [rsp + 0x38]
mov r8d, 0x131
mov qword [rsp + 0x28], rdi
xor edx, edx
mov dword [rsp + 0x38], eax
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.180022eb0
mov r10, qword [rbp - 0x80]
test eax, eax
je 0x18001e75c
mov r8, qword [rsp + 0x50]
inc rsi
cmp rsi, qword [r10]
jb 0x18001e720
mov r9d, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x34]
mov qword [rsp + 0x68], rsi
mov r8, qword [rsp + 0x50]
cmp rsi, qword [r10]
jae 0x18001eec6
movzx eax, byte [r8 + rsi]
cmp al, 0x28
jne 0x18001ec91
mov r14d, 0x38
jmp 0x18001e798
mov r8, qword [rsp + 0x50]
lea eax, [r14 - 0x2e]
cmp eax, 0xa
ja case.default.0x18001e7bd
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x1f310]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
inc rsi
mov qword [rsp + 0x68], rsi
jmp case.default.0x18001e7bd
mov rdi, qword [rbp - 0x60]
cmp rdx, rdi
jbe 0x18001e895
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x38]
mov r9d, 0x109
mov dword [rsp + 0x38], 1
xor edx, edx
call fcn.180012ce0
mov rcx, rax
mov qword [rbp - 0x38], rax
mov rax, qword [rsp + 0x48]
mov r9, rcx
sub rax, rdi
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x38], rax
xor edx, edx
mov rax, qword [rsp + 0x50]
mov r8d, ILFree
add rax, rdi
xor edi, edi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
call fcn.18003ebb0
mov rdx, qword [rsp + 0x48]
mov r10, qword [rbp - 0x80]
jmp case.default.0x18001e7bd
cmp rdx, qword [rbp - 0x60]
jbe case.default.0x18001e7bd
lea rdi, [rdx - 1]
add rdi, r8
nop dword [rax]
movzx eax, byte [rdi]
lea r9, [rsp + 0x38]
mov dword [rsp + 0x38], eax
xor edx, edx
xor eax, eax
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov r8d, 0x131
mov qword [rsp + 0x20], rax
call fcn.180022eb0
mov rdx, qword [rsp + 0x48]
test eax, eax
je 0x18001e891
dec rdx
dec rdi
mov qword [rsp + 0x48], rdx
cmp rdx, qword [rbp - 0x60]
ja 0x18001e850
mov r10, qword [rbp - 0x80]
xor edi, edi
mov r9d, dword [rsp + 0x30]
dec r14d
mov r11d, dword [rsp + 0x34]
cmp r14d, 0x2d
ja 0x18001e793
mov eax, dword [rsp + 0x78]
mov r10, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x58]
jmp 0x18001f1ce
inc rsi
mov qword [rsp + 0x68], rsi
cmp rsi, qword [r10]
jae case.default.0x18001e7bd
nop dword [rax]
movzx eax, byte [r8 + rsi]
lea r9, [rsp + 0x38]
mov r8d, 0x131
mov qword [rsp + 0x28], rdi
xor edx, edx
mov dword [rsp + 0x38], eax
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.180022eb0
mov r10, qword [rbp - 0x80]
test eax, eax
je 0x18001ec73
mov r8, qword [rsp + 0x50]
inc rsi
mov qword [rsp + 0x68], rsi
cmp rsi, qword [r10]
jb 0x18001e8d0
mov rdx, qword [rsp + 0x48]
jmp case.default.0x18001e7bd
movzx eax, byte [r8 + rsi]
cmp al, 0x27
je 0x18001e930
cmp al, 0x22
jne case.default.0x18001e7bd
mov edi, 0xa5
nop word [rax + rax]
cmp edi, 0xd935
ja 0x18001ea02
je 0x18001e99d
cmp edi, 0xa5
je 0x18001e983
cmp edi, 0x48d5
je 0x18001e976
cmp edi, 0x9105
jne 0x18001eac2
mov r13, rsi
mov qword [rbp - 0x28], rsi
jmp 0x18001eac2
inc rsi
mov qword [rsp + 0x68], rsi
jmp 0x18001eac2
movzx r11d, byte [r8 + rsi]
mov r9d, 1
mov dword [rsp + 0x34], r11d
mov dword [rsp + 0x30], r9d
jmp 0x18001eac2
mov rdx, qword [r10]
cmp rsi, rdx
jae 0x18001e9f8
movzx ecx, byte [r8 + rsi]
cmp cl, 0x5c
jne 0x18001e9b5
add rsi, 2
jmp 0x18001e9ee
cmp ecx, r11d
jne 0x18001e9e1
mov eax, 0x36
nop
cmp eax, 0x36
je 0x18001e9cf
cmp eax, 0x3c
jne 0x18001e9d2
inc rsi
jmp 0x18001e9d2
xor r9d, r9d
add eax, 6
cmp eax, 0x42
jb 0x18001e9c0
mov dword [rsp + 0x30], r9d
jmp 0x18001e9ee
cmp cl, 0x29
jne 0x18001e9eb
test r9d, r9d
je 0x18001e9f3
inc rsi
cmp rsi, rdx
jb 0x18001e9a5
mov qword [rsp + 0x68], rsi
mov edi, 0xd935
jmp 0x18001eac2
cmp edi, 0x12165
je 0x18001eae8
cmp edi, 0x16995
je 0x18001eade
cmp edi, 0x1b1c5
jne 0x18001eac2
cmp r15, r13
jbe 0x18001ea77
nop dword [rax + rax]
movzx eax, byte [r8 + r15]
lea r9, [rsp + 0x38]
mov dword [rsp + 0x38], eax
xor edx, edx
xor eax, eax
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov r8d, 0x131
mov qword [rsp + 0x20], rax
call fcn.180022eb0
test eax, eax
je 0x18001ea6a
mov r8, qword [rsp + 0x50]
dec r15
cmp r15, r13
ja 0x18001ea30
mov r8, qword [rsp + 0x50]
mov r10, qword [rbp - 0x80]
mov qword [rbp - 0x40], r15
movzx eax, byte [r8 + r15]
cmp al, 0x27
je 0x18001eab8
cmp al, 0x22
je 0x18001eab8
mov ecx, 0x4f
nop dword [rax]
mov eax, ecx
sub eax, 0x4e
je 0x18001eaa4
cmp eax, 1
jne 0x18001eaa9
xor r15d, r15d
xor r13d, r13d
jmp 0x18001eaa9
mov qword [rsp + 0x48], rsi
dec ecx
cmp ecx, 0x4d
ja 0x18001ea90
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x40], r15
mov r9d, dword [rsp + 0x30]
mov r11d, dword [rsp + 0x34]
add edi, 0x4830
cmp edi, 0x1f950
jbe 0x18001e940
mov rdx, qword [rsp + 0x48]
jmp 0x18001e895
lea r15, [rsi - 1]
mov qword [rbp - 0x40], r15
jmp 0x18001eac2
mov dword [rsp + 0x58], 0x3e7
cmp rsi, qword [r10]
jae 0x18001ef75
jmp 0x18001eac2
mov rdi, qword [rbp - 0x60]
cmp byte [r8 + rdi], 0x3c
lea rax, [rdi + 1]
cmovne rax, rdi
cmp byte [r8 + rdx - 1], 0x3e
mov qword [rbp - 0x60], rax
lea rax, [rdx - 1]
cmovne rax, rdx
mov rdx, rax
mov qword [rsp + 0x48], rax
jmp 0x18001e895
mov rdx, rsi
mov qword [rsp + 0x48], rdx
jmp case.default.0x18001e7bd
mov dword [rsp + 0x58], 0x3e7
cmp rsi, qword [r10]
jae 0x18001ef75
jmp case.default.0x18001e7bd
cmp r15, r13
jbe case.default.0x18001e7bd
mov r12, qword [rsp + 0x60]
mov edi, 0x121
mov rsi, qword [rbp - 0x58]
cmp edi, 0x121
je 0x18001eba7
cmp edi, 0x3751
jne 0x18001ebcc
mov rax, r15
lea rcx, [rbp - 0x58]
sub rax, r13
mov r9, rsi
mov qword [rbp - 0x58], rax
xor edx, edx
lea rax, [r8 + r13]
mov r8d, ILFree
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
call fcn.18003ebb0
jmp 0x18001ebc7
mov r9d, 0x109
mov dword [rsp + 0x38], 1
mov r8, r12
lea rcx, [rsp + 0x38]
xor edx, edx
call fcn.180012ce0
mov rsi, rax
mov r8, qword [rsp + 0x50]
add edi, 0x3630
cmp edi, 0x6c60
jbe 0x18001eb65
mov r12, qword [rbp - 0x70]
mov rdx, qword [rsp + 0x48]
mov qword [rbp - 0x58], rsi
mov rsi, qword [rsp + 0x68]
jmp 0x18001e891
mov qword [rbp - 0x60], rsi
cmp rsi, qword [r10]
jae case.default.0x18001e7bd
nop
movzx eax, byte [r8 + rsi]
cmp al, 0x5c
jne 0x18001ec10
mov eax, 2
jmp 0x18001ec61
cmp al, 0x29
je case.0x18001e7bd.54
cmp rsi, 1
jb 0x18001ec5c
movzx eax, byte [r8 + rsi - 1]
lea r9, [rsp + 0x38]
mov r8d, 0x131
mov qword [rsp + 0x28], rdi
xor edx, edx
mov dword [rsp + 0x38], eax
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.180022eb0
mov r8, qword [rsp + 0x50]
test eax, eax
je 0x18001ec58
movzx eax, byte [r8 + rsi]
cmp al, 0x27
je 0x18001ec7d
cmp al, 0x22
je 0x18001ec7d
mov r10, qword [rbp - 0x80]
mov eax, 1
add rsi, rax
mov qword [rsp + 0x68], rsi
cmp rsi, qword [r10]
jb 0x18001ec00
mov qword [rsp + 0x68], rsi
mov rdx, qword [rsp + 0x48]
jmp case.default.0x18001e7bd
mov r10, qword [rbp - 0x80]
mov rdx, qword [rsp + 0x48]
mov r14d, 0x36
jmp case.default.0x18001e7bd
cmp al, 0x5b
jne 0x18001eec6
mov r14, qword [rbp + 0x20]
mov r13d, edi
mov r15, qword [rbp + 0x18]
cmp r13d, 7
ja case.default.0x18001ecc3
lea r9, [0x180000000]
mov eax, r13d
mov ecx, dword [r9 + rax*4 + 0x1f33c]
add rcx, r9
jmp rcx
mov rcx, qword [rbp - 0x10]
mov rax, qword [rcx + 8]
mov qword [rbp - 0x38], rax
mov rax, qword [rcx + 0x10]
mov qword [rbp - 0x58], rax
jmp case.default.0x18001ecc3
mov rcx, qword [rbp - 0x60]
cmp rcx, rdx
jne 0x18001edd3
cmp dword [rbp - 0x68], 0
je 0x18001edc5
mov rbx, qword [rbp - 8]
mov esi, 8
nop
mov eax, esi
sub eax, 7
je 0x18001ed92
cmp eax, 1
jne 0x18001ed99
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x38]
mov r9d, 0x109
mov dword [rsp + 0x38], eax
xor edx, edx
call fcn.180012ce0
mov r12, qword [rbp - 0x70]
mov edi, 1
mov rbx, rax
cmp rdi, r12
jae 0x18001ed99
mov r8, qword [rsp + 0x50]
movzx eax, byte [r8 + rdi]
cmp al, 0xa
je 0x18001ed54
mov dword [rsp + 0x38], eax
jmp 0x18001ed64
cmp byte [r8 + rdi - 1], 0x20
je 0x18001ed88
mov dword [rsp + 0x38], 0x20
xor eax, eax
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov r8, rbx
xor ecx, ecx
mov qword [rsp + 0x20], rax
lea r9d, [rax + 0x7d]
call fcn.1800139c0
mov r8, qword [rsp + 0x50]
inc rdi
cmp rdi, r12
jb 0x18001ed45
jmp 0x18001ed99
mov r15, qword [rbx]
mov r14, qword [rbx + 8]
dec esi
cmp esi, 6
ja 0x18001ed00
mov rsi, qword [rsp + 0x68]
xor edi, edi
mov r12, qword [rbp - 0x70]
mov rdx, qword [rsp + 0x48]
mov r10, qword [rbp - 0x80]
mov qword [rbp - 8], rbx
mov rbx, qword [rbp - 0x50]
jmp case.default.0x18001ecc3
lea r15, [r8 + 1]
lea r14, [r12 - 1]
jmp case.default.0x18001ecc3
mov eax, 0x6f
cmp eax, 0x6f
jne 0x18001ede7
mov r14, rdx
lea r15, [r8 + rcx]
sub r14, rcx
add eax, 0x9f9
cmp eax, 0x9f9
jbe 0x18001edd8
jmp case.default.0x18001ecc3
mov r8, qword [rsp + 0x60]
lea rcx, [rbp]
add r8, 0xd8
mov dword [rsp + 0x28], 0xf9
xor r9d, r9d
mov qword [rbp], r14
xor edx, edx
mov qword [rsp + 0x20], r15
call fcn.18002a820
mov qword [rbp - 0x10], rax
cmp rax, 0
je 0x18001ef75
mov rdx, qword [rsp + 0x48]
mov r10, qword [rbp - 0x80]
jmp case.default.0x18001ecc3
mov rdx, rsi
mov qword [rsp + 0x48], rdx
jmp case.default.0x18001ecc3
mov rax, qword [r10]
cmp rsi, rax
jae 0x18001ef75
cmp byte [r8 + rsi], 0x5d
je 0x18001ee61
inc rsi
cmp rsi, rax
jb 0x18001ee52
mov qword [rsp + 0x68], rsi
cmp rsi, rax
jae 0x18001ef75
jmp case.default.0x18001ecc3
inc rsi
jmp 0x18001ee85
mov r15, rdi
mov r14, rdi
jmp case.default.0x18001ecc3
inc rsi
mov qword [rbp - 0x60], rsi
mov qword [rsp + 0x68], rsi
nop word [rax + rax]
mov r8, qword [rsp + 0x50]
inc r13d
lea eax, [r13 + 0xe1]
cmp eax, 0xe9
jb 0x18001eca4
mov eax, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x30]
mov r10, qword [rsp + 0x60]
mov r11d, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x58]
jmp 0x18001f1ce
mov r14, qword [rbp + 0x20]
mov r12d, 0xfa
mov r15, qword [rbp + 0x18]
jmp 0x18001eee2
xor edi, edi
mov eax, r12d
sub eax, 0xfa
je 0x18001f082
sub eax, 1
je 0x18001efa2
sub eax, 1
je 0x18001ef37
sub eax, 1
je 0x18001ef1d
cmp eax, 1
jne 0x18001f090
mov rax, qword [rbp - 0x70]
inc rax
mov qword [rsp + 0x68], rax
jmp 0x18001f090
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax + 8]
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x38], rcx
jmp 0x18001f090
mov r8, qword [rsp + 0x60]
lea rcx, [rbp + 8]
add r8, 0xd8
mov dword [rsp + 0x28], 0xf9
xor r9d, r9d
mov qword [rbp + 8], r14
xor edx, edx
mov qword [rsp + 0x20], r15
call fcn.18002a820
mov qword [rsp + 0x70], rax
cmp rax, 0
jne 0x18001f090
mov r12, qword [rbp - 0x70]
mov r10, qword [rsp + 0x60]
movsxd rax, dword [rbp - 0x18]
mov ecx, 0x663
mov r9d, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x34]
mov qword [r10 + 0x238], rax
mov eax, dword [rsp + 0x78]
jmp 0x18001f1ce
cmp dword [rbp - 0x68], 0
je 0x18001f075
mov rbx, qword [rbp + 0x10]
mov esi, 0x4f
cmp esi, 0x4f
je 0x18001f032
cmp esi, 0x1c64
je 0x18001efd7
cmp esi, 0x3879
jne 0x18001f054
mov r15, qword [rbx]
mov r14, qword [rbx + 8]
jmp 0x18001f054
mov r13, qword [rbp - 0x70]
mov edi, 1
cmp rdi, r13
jae 0x18001f054
movzx eax, byte [r8 + rdi]
cmp al, 0xa
je 0x18001eff4
mov dword [rsp + 0x38], eax
jmp 0x18001f004
cmp byte [rdi + r8 - 1], 0x20
je 0x18001f028
mov dword [rsp + 0x38], 0x20
xor eax, eax
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov r8, rbx
xor ecx, ecx
mov qword [rsp + 0x20], rax
lea r9d, [rax + 0x7d]
call fcn.1800139c0
mov r8, qword [rsp + 0x50]
inc rdi
cmp rdi, r13
jb 0x18001efe5
jmp 0x18001f054
mov r8, qword [rsp + 0x60]
lea rcx, [rsp + 0x38]
mov r9d, 0x109
mov dword [rsp + 0x38], 1
xor edx, edx
call fcn.180012ce0
mov rbx, rax
mov r8, qword [rsp + 0x50]
add esi, 0x1c15
cmp esi, 0x543f
jbe 0x18001efb5
mov qword [rbp + 0x10], rbx
mov rbx, qword [rbp - 0x50]
jmp 0x18001f090
mov r14, qword [rbp - 0x70]
lea r15, [r8 + 1]
dec r14
jmp 0x18001f090
mov r15, rdi
mov r14, rdi
nop dword [rax + rax]
mov r8, qword [rsp + 0x50]
inc r12d
cmp r12d, 0xff
jb 0x18001eee0
mov r12, qword [rbp - 0x70]
jmp 0x18001f2ad
inc rsi
mov qword [rsp + 0x68], rsi
jmp 0x18001f1ce
mov r13, qword [rbp - 0x70]
cmp r13, 1
jbe 0x18001f1cb
mov rbx, qword [rsp + 0x50]
mov esi, 0xd3
mov eax, esi
sub eax, 0xd2
je 0x18001f107
cmp eax, 1
jne 0x18001f19d
mov r9d, 0x109
mov dword [rsp + 0x38], eax
mov r8, r10
lea rcx, [rsp + 0x38]
xor edx, edx
call fcn.180012ce0
mov qword [rbp - 0x48], rax
jmp 0x18001f19d
cmp dword [rbp - 0x78], 0
je 0x18001f140
mov r9, qword [rbp - 0x48]
lea rax, [r13 - 1]
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x38]
lea rax, [rbx + 1]
xor edx, edx
mov qword [rsp + 0x28], rax
mov r8d, ILFree
mov qword [rsp + 0x20], 0
call fcn.18003ebb0
jmp 0x18001f19d
mov edi, 0xa
mov eax, edi
sub eax, 0xa
je 0x18001f15e
cmp eax, 1
jne 0x18001f191
mov dword [r10 + 0x258], 0
jmp 0x18001f191
lea rax, [r13 - 1]
mov dword [r10 + 0x258], 1
mov qword [rsp + 0x38], rax
lea rcx, [rbx + 1]
mov rax, qword [rbp - 0x48]
lea r8, [rsp + 0x38]
mov r9, r10
mov qword [rsp + 0x20], rax
mov edx, 0xa7
call fcn.180030860
mov r10, qword [rsp + 0x60]
inc edi
cmp edi, 0xc
jb 0x18001f145
mov r10, qword [rsp + 0x60]
dec esi
cmp esi, 0xd1
ja 0x18001f0d3
mov rbx, qword [rbp - 0x50]
mov eax, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x58]
mov r12, r13
mov rdi, qword [rbp - 0x30]
add ecx, 0x9f
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x50]
mov r15, qword [rbp - 0x40]
mov r13, qword [rbp - 0x28]
mov r14, qword [rbp - 0x80]
mov dword [rsp + 0x58], ecx
cmp ecx, eax
jb 0x18001e610
jmp 0x18001e321
cmp ecx, 0x525
je 0x18001f2ce
cmp ecx, 0x5c4
je 0x18001f245
cmp ecx, 0x663
je 0x18001ef7a
cmp ecx, 0x702
je 0x18001f235
cmp ecx, 0x7a1
je 0x18001e321
jmp 0x18001f1ce
xor ebx, ebx
cmp dword [rsp + 0x40], ebx
cmovne rbx, rsi
mov qword [rbp - 0x50], rbx
jmp 0x18001f1ce
cmp dword [rbp - 0x78], 0
je 0x18001f287
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x18001f266
mov rax, qword [rdi]
cmp byte [rcx + rax - 1], 0x21
jne 0x18001f266
lea rax, [rcx - 1]
mov qword [rdi + 8], rax
mov rax, qword [r10 + 0xd0]
mov rcx, rdi
mov r9, qword [rbp - 0x48]
mov r8, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x20]
mov qword [rsp + 0x20], rax
call qword [r10 + 0x78]
jmp 0x18001f2a9
mov rax, qword [r10 + 0xd0]
mov rcx, rdi
mov r9, qword [rbp - 0x48]
mov r8, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x20]
mov qword [rsp + 0x20], rax
call qword [r10 + 0x88]
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x78]
mov r9d, dword [rsp + 0x30]
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x48]
mov r11d, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x58]
jmp 0x18001f1ce
mov rdi, qword [rbp - 0x38]
test rdi, rdi
je 0x18001f1ce
mov r9d, 0x109
mov dword [rsp + 0x38], 1
mov r8, r10
lea rcx, [rsp + 0x38]
xor edx, edx
call fcn.180012ce0
mov r8, rax
mov qword [rbp - 0x20], rax
mov rdx, rdi
mov ecx, 0x22
call fcn.180006c90
jmp 0x18001f2ad