Function at 0x18003fc00
Capabilities:
Terminate process

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1948]
mov eax, 0x1a48
call fcn.1800bfbd0
sub rsp, rax
mov rax, qword [0x180106b38]
xor rax, rsp
mov qword [rbp + 0x1930], rax
mov rax, qword [rbp + 0x19b8]
mov r11, r8
mov r14, qword [rbp + 0x19e0]
mov r13, r9
mov r10, qword [rbp + 0x19c8]
mov r12, qword [rbp + 0x19d0]
mov rsi, qword [rbp + 0x19e8]
mov qword [rbp + 0x68], rax
mov eax, dword [rbp + 0x19b0]
mov edi, eax
imul ebx, eax, 0x710
mov qword [rbp - 0x50], r8
mov r8, rdx
mov qword [rsp + 0x68], rdx
mov rdx, rcx
mov qword [rbp + 0x60], r9
mov r9, qword [rbp + 0x19c0]
mov qword [rbp + 0x50], rcx
mov rcx, qword [rbp + 0x19d8]
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x48], r9
mov qword [rbp - 0x58], r10
mov qword [rbp + 0xb8], r12
mov qword [rbp - 0x80], rcx
mov qword [rbp + 0x20], rsi
mov dword [rsp + 0x70], eax
mov dword [rbp + 0x58], ebx
cmp eax, ebx
ja 0x18003fd14
mov rbx, qword [rbp - 0x10]
mov r15d, dword [rsp + 0x60]
movsxd rax, dword [rbp - 0x60]
mov qword [rbp - 0x68], rax
cmp edi, 0x11bcd
ja 0x180040323
je 0x180040057
cmp edi, 0x5ee1
ja 0x18003ffb9
je 0x180040351
mov eax, edi
sub eax, 0x6b
je 0x18003ffb0
sub eax, 0x3c
je 0x18003ff6a
sub eax, 0x2eff
je 0x18003fd3a
cmp eax, 0x1ab8
jne 0x180040001
mov eax, dword [rbp + 0x5c]
mov rcx, qword [rbp + 0x1930]
xor rcx, rsp
call fcn.1800bfc40
add rsp, 0x1a48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov eax, dword [r8]
add eax, 3
cmp eax, 0x64
jge 0x18003fd9d
mov ecx, PathYetAnotherMakeUniqueName
nop word [rax + rax]
mov eax, ecx
sub eax, 0x4a
je 0x18003fd7b
sub eax, 1
je 0x18003fd6e
cmp eax, 1
jne 0x18003fd91
lea rax, [rbp + 0x410]
mov qword [rbp - 0x38], rax
jmp 0x18003fd91
lea rax, [rbp + 0xf0]
mov qword [rbp], rax
jmp 0x18003fd91
lea rax, [rbp + 0x1730]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x280]
mov qword [rbp + 0x18], rax
inc ecx
cmp ecx, 0x4d
jb 0x18003fd50
jmp 0x18003fffd
mov r14d, 0xc1
cmp r14d, 0xc1
je 0x18003fe83
cmp r14d, 0x7de7
je 0x18003fe1c
cmp r14d, 0xfb0d
jne 0x18003ff4d
mov eax, dword [r8]
mov edi, 0x24
lea esi, [rax*8 + 0x18]
cmp edi, 0x24
je 0x18003fdec
cmp edi, 0x1c8
je 0x18003fe13
cmp edi, 0x1560
je 0x18003fe13
jmp 0x18003fe05
movsxd rcx, esi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rbp - 0x10], rax
mov rbx, rax
test rax, rax
je 0x180041202
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x18003fdd5
mov qword [rbp - 0x38], rbx
jmp 0x18003ff48
mov eax, dword [r8]
mov edi, 0x24
lea esi, [rax*4 + 0xc]
nop dword [rax + rax]
cmp edi, 3
je 0x18003fe64
cmp edi, 0x24
je 0x18003fe4c
cmp edi, 0x1c8
je 0x18003fe76
cmp edi, 0x1560
je 0x18003fe76
jmp 0x18003fe68
movsxd rcx, esi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x18004122b
mov qword [rbp + 0x70], rax
jmp 0x18003fe68
mov byte [rbp + 0x70], 1
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x18003fe30
mov rax, qword [rbp + 0x70]
mov qword [rbp], rax
jmp 0x18003ff48
mov esi, dword [r8]
mov edi, 0x24
add esi, 3
nop
cmp edi, 3
je 0x18003fec4
cmp edi, 0x24
je 0x18003feac
cmp edi, 0x1c8
je 0x18003fed6
cmp edi, 0x1560
je 0x18003fed6
jmp 0x18003fec8
movsxd rcx, esi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x180041254
mov qword [rbp + 0x78], rax
jmp 0x18003fec8
mov byte [rbp + 0x78], 1
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x18003fe90
mov rax, qword [rbp + 0x78]
mov edi, 0x24
mov qword [rbp - 0x40], rax
mov rax, qword [rsp + 0x68]
mov eax, dword [rax]
lea esi, [rax*4 + 0xc]
cmp edi, 3
je 0x18003ff28
cmp edi, 0x24
je 0x18003ff0d
cmp edi, 0x1c8
je 0x18003ff3d
cmp edi, 0x1560
je 0x18003ff3d
jmp 0x18003ff2f
movsxd rcx, esi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x18004127d
mov qword [rbp + 0x80], rax
jmp 0x18003ff2f
mov byte [rbp + 0x80], 1
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x18003fef1
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x18], rax
mov r8, qword [rsp + 0x68]
add r14d, 0x7d26
cmp r14d, 0x17772
jbe 0x18003fda3
mov edi, dword [rsp + 0x70]
jmp 0x18003fffd
xor esi, esi
xor r9d, r9d
mov qword [rsp + 0x38], rsi
xor r8d, r8d
mov qword [rsp + 0x30], rsi
xor edx, edx
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xd0]
mov dword [rsp + 0x20], 0xb5
call fcn.18004e110
movups xmm1, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movd eax, xmm1
movsd qword [rbp + 0xe0], xmm0
mov byte [rbp + 0x5c], al
jmp 0x18003fff8
mov dword [rbp - 0x60], 0
jmp 0x180040001
cmp edi, 0x8e1c
je 0x180040682
cmp edi, 0xbd57
je 0x18004003f
cmp edi, 0xec92
jne 0x180040001
movsxd rcx, dword [rsp + 0x60]
mov rax, qword [rbp - 0x40]
mov r8, rcx
mov byte [rcx + rax], 0
test ecx, ecx
jle 0x18003fff3
mov dl, 0x30
mov rcx, r14
call sub.VCRUNTIME140.dll_memset
mov r15d, dword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov rcx, qword [rbp - 0x80]
imul eax, dword [rbp + 0x19b0], 0x71
add edi, eax
mov dword [rsp + 0x70], edi
cmp edi, dword [rbp + 0x58]
ja 0x18003fd14
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
mov r9, qword [rbp - 0x48]
mov r12, qword [rbp + 0xb8]
mov rsi, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x50]
mov r14, qword [rbp - 0x20]
mov r13, qword [rbp + 0x60]
jmp 0x18003fcc2
movsxd rcx, dword [rsp + 0x60]
mov rdx, qword [rbp - 0x40]
mov byte [rcx + rdx], 0x2e
inc ecx
mov dword [rsp + 0x60], ecx
mov r15d, ecx
jmp 0x18003fffd
movsxd r13, dword [rsp + 0x60]
xor r15d, r15d
xor r14d, r14d
mov qword [rbp - 8], r15
xor r12d, r12d
mov qword [rbp + 0x30], r13
test r13, r13
jle 0x180040359
mov rbx, qword [rbp - 0x40]
mov r9, qword [rbp - 0x80]
nop
mov r13, qword [rbp - 0x68]
mov edx, 0xa2
nop dword [rax]
mov esi, dword [rbp - 0x60]
mov eax, edx
sub eax, 0x9e
je 0x180040315
sub eax, 1
je 0x1800401b6
sub eax, 1
je 0x180040162
sub eax, 1
je 0x18004012d
cmp eax, 1
jne 0x180040182
movzx r8d, byte [r15 + rbx]
nop dword [rax]
mov esi, 6
mov eax, esi
sub eax, 6
je 0x180040114
cmp eax, 1
jne 0x18004011a
movsxd rax, r14d
lea rcx, [rax + rax*4]
mov rax, qword [r9 + 0x20]
lea rdx, [rax + rcx*8]
xor eax, eax
movsxd rcx, dword [rdx + 0x18]
test ecx, ecx
jle 0x18004010e
mov rdi, qword [rdx + 0x20]
nop
cmp byte [rdi + rax*8], r8b
je 0x180040123
inc rax
cmp rax, rcx
jl 0x180040100
mov r14d, dword [rdx + 0x14]
jmp 0x18004011a
cmp r14d, 0xffffffff
je 0x180040153
inc esi
cmp esi, 8
jb 0x1800400d5
jmp 0x1800400d0
mov r14d, dword [rdi + rax*8 + 4]
mov r8, qword [rsp + 0x68]
movsxd rax, r14d
mov edi, 0x11bcd
mov edx, 0xa1
mov dword [rsp + 0x70], edi
lea rcx, [rax + rax*4]
mov rax, qword [r9 + 0x20]
mov rax, qword [rax + rcx*8]
mov qword [rbp + 0x88], rax
jmp 0x180040186
mov r8, qword [rsp + 0x68]
xor r14d, r14d
mov edx, 0x9f
jmp 0x180040182
movsxd rax, r14d
lea rcx, [rax + rax*4]
mov rax, qword [r9 + 0x20]
mov rdi, qword [rax + rcx*8 + 8]
movzx eax, byte [rax + rcx*8 + 0x10]
mov byte [rsp + 0x74], al
mov qword [rbp + 0x90], rdi
mov edi, dword [rsp + 0x70]
dec edx
cmp edx, 0x9d
ja 0x180040090
inc r15
inc r12d
mov qword [rbp - 8], r15
cmp r15, qword [rbp + 0x30]
jl 0x180040080
mov rbx, qword [rbp - 0x10]
mov r15d, dword [rsp + 0x60]
jmp 0x18003fffd
mov r10, qword [rbp + 0x88]
movsxd rax, r14d
lea rcx, [rax + rax*4]
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x20]
movsx r11d, byte [rax + rcx*8 + 0x11]
test r10, r10
je 0x180040307
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r10 + rax], 0
jne 0x1800401e2
mov r9d, r12d
mov dword [rbp - 0x60], esi
sub r9d, eax
mov qword [rbp - 0x68], r13
inc r9d
cmp qword [rbp + 0x90], 0
je 0x18004027b
mov dword [rbp - 0x60], esi
mov qword [rbp - 0x68], r13
test r13, r13
jne 0x180040269
mov dword [rbp - 0x60], esi
mov qword [rbp - 0x68], r13
cmp esi, dword [r8]
jge 0x180040269
mov rax, qword [rsp + 0x68]
mov r10d, esi
mov rcx, qword [rbp]
mov r8, r13
mov rdx, qword [rbp - 0x38]
xor edi, edi
nop word [rax + rax]
mov qword [rdx + r8*8], rdi
inc r10d
mov dword [rcx + r8*4], 0xffffffff
inc r8
cmp r10d, dword [rax]
jl 0x180040240
mov dword [rbp - 0x60], r10d
mov r13, r8
mov r10, qword [rbp + 0x88]
mov qword [rbp - 0x68], r8
movsx eax, byte [rsp + 0x74]
mov rdx, qword [rbp + 0x18]
add eax, r9d
cdqe
mov dword [rdx + rax*4], r11d
movzx edx, byte [r10]
xor edi, edi
test dl, dl
je 0x180040302
mov rax, qword [rbp - 0x38]
mov rsi, r10
mov rbx, qword [rbp]
mov r13, qword [rbp + 0x90]
movsx r15d, byte [rsp + 0x74]
movsxd rcx, r9d
lea r8, [rax + rcx*8]
mov rax, qword [rbp - 0x20]
sub rax, r10
lea r10, [rax + rcx]
cmp byte [rsi + r10], dl
jge 0x1800402e5
mov byte [rsi + r10], dl
test byte [rsi], 1
je 0x1800402e5
mov qword [r8], r13
test r13, r13
je 0x1800402e5
cmp edi, r15d
jl 0x1800402e5
lea eax, [r15 + r11]
cmp edi, eax
jg 0x1800402e5
lea eax, [r15 + r9]
movsxd rcx, eax
lea edx, [rdi + r9]
mov dword [rbx + rcx*4], edx
movzx edx, byte [rsi + 1]
inc rsi
inc edi
add r8, 8
test dl, dl
jne 0x1800402b3
mov r15, qword [rbp - 8]
mov r13, qword [rbp - 0x68]
mov rbx, qword [rbp - 0x40]
mov r8, qword [rsp + 0x68]
mov r9, qword [rbp - 0x80]
mov edx, 0x9f
jmp 0x180040182
mov edi, 0x11bcd
mov dword [rsp + 0x70], edi
jmp 0x180040186
cmp edi, 0x1d8b9
ja 0x180040606
je 0x1800403c3
cmp edi, 0x14b08
je 0x180040370
cmp edi, 0x17a43
je 0x180040363
cmp edi, 0x1a97e
jne 0x180040001
mov dword [rsp + 0x60], 0
mov r15d, dword [rsp + 0x60]
jmp 0x180040001
movsxd rax, dword [r8]
mov byte [rax + r14], 0
jmp 0x180040001
lea r8d, [r15 - 3]
xor eax, eax
xor edx, edx
movsxd rcx, r8d
test r8d, r8d
jle 0x180040393
lea rsi, [r14 + 1]
mov rdi, r14
mov rdx, rcx
mov eax, r8d
rep movsb byte [rdi], byte [rsi]
mov edi, dword [rsp + 0x70]
mov r8, qword [rsp + 0x68]
cmp eax, dword [r8]
jge 0x18003fffd
lea rcx, [r14 + rdx]
nop word [rax + rax]
mov byte [rcx], 0x30
lea rcx, [rcx + 1]
inc eax
cmp eax, dword [r8]
jl 0x1800403b0
jmp 0x18003fffd
xor r12d, r12d
cmp dword [r8], r12d
jle 0x180040001
mov ebx, dword [rsp + 0x60]
test rax, rax
je 0x1800405e8
mov rdi, qword [rbp]
movsxd rax, r12d
movsxd rcx, dword [rdi + rax*4]
test ecx, ecx
js 0x1800405e4
mov rdx, qword [rbp - 0x38]
cmp qword [rdx + rcx*8], 0
je 0x1800405e4
mov r13d, 0xd4
mov eax, r13d
sub eax, 0xd4
je 0x18004042c
cmp eax, 0x7d
jne 0x1800405cf
mov rcx, qword [rbp + 0x18]
movsxd rax, r12d
dec r12d
mov ecx, dword [rcx + rax*4]
add r12d, ecx
jmp 0x1800405cf
test r10, r10
je 0x1800405ab
test r11, r11
je 0x1800405ab
test r9, r9
je 0x1800405ab
mov r14d, 0x1b
movsxd r15, r12d
cmp r14d, 0x1b
je 0x1800404bd
cmp r14d, 0x7e9
jne 0x180040592
movsxd rax, dword [rdi + r15*4]
xor r9d, r9d
xor ecx, ecx
mov r8, qword [rdx + rax*8]
mov edx, 0xe8
call fcn.180042470
movsxd rdx, dword [rdi + r15*4]
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
mov r9, qword [rbp - 0x48]
mov rcx, qword [r10]
mov qword [rcx + rdx*8 - 8], rax
movsxd rax, dword [rdi + r15*4]
mov edx, eax
mov rcx, rax
mov rax, qword [r11]
sub edx, r12d
mov dword [rax + rcx*4 - 4], edx
mov rax, qword [rbp + 0x18]
movsxd rdx, dword [rdi + r15*4]
mov rcx, qword [r9]
mov eax, dword [rax + r15*4]
mov dword [rcx + rdx*4 - 4], eax
jmp 0x18004058e
cmp qword [r10], 0
jne 0x180040592
cmp qword [r11], 0
jne 0x180040592
cmp qword [r9], 0
jne 0x180040592
mov esi, 0x71
mov eax, esi
sub eax, 0x71
je 0x180040533
cmp eax, 1
jne 0x18004057f
xor edi, edi
cmp dword [r8], edi
jle 0x18004057f
xor ecx, ecx
xor edx, edx
nop
mov rax, qword [r10]
lea rdx, [rdx + 8]
inc edi
lea rcx, [rcx + 4]
mov qword [rdx + rax - 8], 0
mov rax, qword [r11]
mov dword [rcx + rax - 4], 0
mov rax, qword [r9]
mov dword [rcx + rax - 4], 0
cmp edi, dword [r8]
jl 0x180040500
jmp 0x18004057f
movsxd rcx, dword [r8]
shl rcx, 3
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r8, qword [rbp - 0x58]
mov rdi, qword [rsp + 0x68]
mov qword [r8], rax
movsxd rcx, dword [rdi]
shl rcx, 2
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rcx, qword [rbp - 0x50]
mov qword [rcx], rax
movsxd rcx, dword [rdi]
shl rcx, 2
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r9, qword [rbp - 0x48]
mov r8, rdi
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
mov qword [r9], rax
inc esi
cmp esi, 0x73
jb 0x1800404e0
mov rdi, qword [rbp]
mov rdx, qword [rbp - 0x38]
mov r8, qword [rsp + 0x68]
add r14d, 0x7ce
cmp r14d, 0xf9c
jbe 0x180040450
movsxd rax, r12d
movsxd rcx, dword [rdi + rax*4]
mov rax, 0xffffffffffffffff
mov rdx, qword [rdx + rcx*8]
nop dword [rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x1800405c0
mov rdx, qword [rbp - 0x38]
add ebx, eax
add r13d, 0x7d
cmp r13d, 0x1ce
jb 0x180040404
mov dword [rsp + 0x60], ebx
mov rax, qword [rbp - 0x68]
inc r12d
cmp r12d, dword [r8]
jl 0x1800403d3
mov rbx, qword [rbp - 0x10]
mov r15d, dword [rsp + 0x60]
mov edi, dword [rsp + 0x70]
jmp 0x18003fffd
cmp edi, 0x207f4
je 0x180041162
cmp edi, 0x2372f
je 0x1800406d6
cmp edi, 0x2666a
jne 0x180040001
mov edi, 0xa8
nop
mov eax, edi
sub eax, 0xa7
je 0x1800412a6
cmp eax, 1
jne 0x180040673
mov rax, qword [rbp - 0x40]
lea rcx, [rbp + 0x1730]
cmp rax, rcx
je 0x180040673
mov dword [rsp + 0x28], 0x35
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], 0
xor edx, edx
mov rcx, rax
call fcn.1800b5940
dec edi
cmp edi, 0xa6
ja 0x180040630
mov r8, qword [rsp + 0x68]
movsxd rsi, dword [rsp + 0x60]
xor edi, edi
mov rcx, qword [rbp - 0x40]
mov byte [rsi + rcx], 0x2e
inc esi
mov dword [rsp + 0x60], esi
cmp dword [r8], edi
jle 0x1800406ca
movsxd rax, esi
mov rdx, r12
add rcx, rax
nop word [rax + rax]
movzx eax, byte [rdx]
inc esi
mov byte [rcx], al
lea rcx, [rcx + 1]
inc edi
lea rdx, [rdx + 1]
cmp edi, dword [r8]
jl 0x1800406b0
mov dword [rsp + 0x60], esi
mov edi, dword [rsp + 0x70]
mov r15d, esi
jmp 0x18003fffd
cmp qword [rcx + 0x28], 0
je 0x180040001
mov eax, 0xec
mov dword [rbp + 0xc], eax
nop dword [rax]
sub eax, 0xec
je 0x180041156
sub eax, 0xf
je 0x180040f31
sub eax, 0xf
je 0x1800408e5
cmp eax, 0xf
jne 0x180040efa
cmp dword [rbp - 0x30], 0
jne 0x180040887
mov rbx, qword [rbp - 0x80]
mov edi, PathYetAnotherMakeUniqueName
nop dword [rax]
cmp edi, 0x49
je 0x1800407f5
cmp edi, 0x64
jne 0x180040862
cmp dword [rdx], 0
jne 0x18004079c
mov eax, dword [r13]
lea rdx, [rsp + 0x78]
mov qword [rsp + 0x40], r9
mov rcx, r12
mov dword [rbp - 0x70], eax
lea r9, [rbp - 0x78]
mov eax, dword [r8]
mov r8, r10
mov dword [rsp + 0x78], eax
mov eax, dword [rbx + 0x1c]
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r11
mov dword [rbp - 0x78], eax
lea rax, [rbp - 0x70]
mov dword [rsp + 0x28], 0xf7
mov qword [rsp + 0x20], rax
call fcn.180045320
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
mov r8, qword [rsp + 0x68]
cmp dword [rsi], 0
jne 0x180040862
mov rax, qword [rbp + 0x68]
mov r9, r11
mov rdx, qword [rbp - 0x48]
mov rcx, r14
mov qword [rsp + 0x40], r10
mov eax, dword [rax]
mov dword [rsp + 0x78], eax
mov eax, dword [r8]
lea r8, [rsp + 0x78]
mov dword [rbp - 0x78], eax
mov eax, dword [rbx + 0x1c]
mov dword [rbp - 0x70], eax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x70
call fcn.180023dc0
jmp 0x180040862
mov eax, dword [rsi]
lea rcx, [rbp + 0x10]
mov dword [rbp - 0x70], eax
mov eax, dword [rdx]
lea rdx, [rbp - 0x18]
mov dword [rbp + 0x10], eax
mov rax, qword [rbp + 0x68]
mov eax, dword [rax]
mov dword [rbp - 0x78], eax
mov eax, dword [r13]
mov dword [rsp + 0x78], eax
mov eax, dword [r8]
mov r8, r11
mov dword [rbp - 0x18], eax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x30], r9
lea r9, [rsp + 0x78]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x6b
call fcn.18003fc00
mov r10, qword [rbp - 0x58]
add edi, 0x1b
mov r11, qword [rbp - 0x50]
mov r8, qword [rsp + 0x68]
mov r9, qword [rbp - 0x48]
mov rdx, qword [rbp + 0x50]
cmp edi, 0x7f
jb 0x180040730
mov rbx, qword [rbp - 0x10]
lea rax, [rbp + 0x730]
cmp qword [rbp - 0x28], rax
je 0x180040efa
mov rbx, qword [rbp + 0x48]
mov edi, 0xe8
mov eax, edi
sub eax, 0xe8
je 0x1800408be
cmp eax, 1
jne 0x1800408d2
mov rcx, qword [rbp + 0x38]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
jmp 0x1800408cc
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [rbp + 0x40]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
inc edi
cmp edi, 0xea
jb 0x1800408a1
mov rbx, qword [rbp - 0x10]
jmp 0x180040efa
mov ecx, dword [r8]
xor esi, esi
mov edi, esi
test ecx, ecx
jle 0x180040916
mov edx, esi
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rbp - 0x28]
lea rdx, [rdx + 8]
inc edi
mov qword [rdx + rax - 8], rsi
mov ecx, dword [r8]
cmp edi, ecx
jl 0x180040900
mov dword [rsp + 0x78], esi
mov r8d, esi
mov qword [rbp - 8], rsi
test ecx, ecx
jle 0x180040ef6
movsxd r13, dword [rbp - 0x30]
mov rax, qword [rbp - 0x20]
mov r14, r13
mov qword [rbp + 0x30], r13
nop dword [rax + rax]
test byte [rax + rsi], 1
lea r15, [rax + rsi]
mov qword [rbp + 0xc8], r15
jne 0x180040968
mov edx, ecx
test r13d, r13d
jle 0x180040ed0
lea eax, [r8 + 1]
cmp eax, ecx
jne 0x180040ecc
mov edx, 0x119
mov dword [rbp - 0x70], edx
cmp edx, 0x119
je 0x1800409e4
cmp edx, 0xb636
je 0x1800409cf
mov rdi, qword [rsp + 0x68]
cmp edx, 0x16b53
jne 0x180040eb1
xor ebx, ebx
mov r9d, ebx
mov dword [rsp + 0x60], ebx
cmp dword [rdi], ebx
jle 0x180040eb1
mov ecx, ebx
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbp - 0x28]
lea rcx, [rcx + 8]
inc r9d
mov qword [rcx + rax - 8], rbx
cmp r9d, dword [rdi]
jl 0x1800409b0
mov dword [rsp + 0x60], r9d
jmp 0x180040eb1
lea r13d, [r8 + 1]
lea r14, [rsi + 1]
mov dword [rbp - 0x30], r13d
mov qword [rbp + 0x30], r14
jmp 0x180040eac
mov edi, r8d
sub edi, r13d
mov dword [rbp - 0x78], edi
cmp edi, 1
jle 0x180040eac
mov ebx, 0x12b
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x12b
je 0x180040e94
sub eax, 1
je 0x180040e89
sub eax, 1
je 0x180040a84
cmp eax, 1
jne 0x180040e9b
movzx eax, byte [r12 + rsi + 1]
mov rdx, qword [rbp - 0x40]
mov byte [rsi + rdx + 2], al
mov rax, qword [r10]
test rax, rax
je 0x180040e9b
cmp qword [r11], 0
je 0x180040e9b
cmp qword [r9], 0
je 0x180040e9b
cmp qword [rax + rsi*8], 0
je 0x180040e9b
mov rcx, r12
sub rdx, r12
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rcx + rdx + 1], al
lea rcx, [rcx + 1]
test al, al
jne 0x180040a70
jmp 0x180040e9b
mov rax, qword [r10]
test rax, rax
je 0x180040b60
cmp qword [r11], 0
je 0x180040b60
cmp qword [r9], 0
je 0x180040b60
cmp qword [rax + rsi*8], 0
je 0x180040b60
mov edi, 0x8c
mov eax, edi
sub eax, 0x8a
je 0x180040b24
sub eax, 1
je 0x180040af2
cmp eax, 1
jne 0x180040b4f
mov rax, qword [r10]
mov edx, 0x3d
mov rcx, qword [rax + rsi*8]
call sub.VCRUNTIME140.dll_strchr
mov r8d, dword [rsp + 0x78]
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
mov qword [rbp + 0xc0], rax
jmp 0x180040b4f
mov rax, qword [r10]
mov rdx, qword [rax + rsi*8]
mov rax, qword [r11]
movsxd rcx, dword [rax + rsi*4]
mov eax, r8d
sub rax, rcx
mov rcx, qword [rbp - 0x40]
add rcx, 2
add rcx, rax
movzx eax, byte [rdx]
lea rdx, [rdx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x180040b11
jmp 0x180040b4f
mov rcx, qword [rbp + 0xc0]
test rcx, rcx
je 0x180040b4f
mov rax, qword [r11]
sub ecx, dword [rax + rsi*4]
mov rax, qword [r10]
sub ecx, dword [rax + rsi*8]
mov dword [rbp + 8], ecx
lea eax, [rcx + r8]
movsxd rcx, eax
mov rax, qword [rbp - 0x40]
mov byte [rcx + rax + 2], 0
dec edi
cmp edi, 0x89
ja 0x180040ab4
mov edi, dword [rbp - 0x78]
test byte [r15], 1
je 0x180040b6a
xor ecx, ecx
jmp 0x180040b70
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax]
test r13d, r13d
jle 0x180040b79
xor eax, eax
jmp 0x180040b7f
mov rax, qword [rbp + 0x50]
mov eax, dword [rax]
mov dword [rbp - 0x68], eax
lea r9, [rsp + 0x60]
mov rax, qword [rbp + 0x68]
lea rdx, [rbp + 0x28]
mov dword [rbp + 0x10], ecx
inc r8d
mov rcx, qword [rbp - 0x40]
inc rcx
mov eax, dword [rax]
mov dword [rbp - 0x18], eax
mov rax, qword [rbp + 0x60]
mov eax, dword [rax]
mov dword [rsp + 0x60], eax
mov eax, dword [rbp + 8]
sub eax, r13d
add eax, r8d
lea r8, [rbp + 0x38]
mov dword [rbp + 0x28], eax
movsxd rax, r13d
add rcx, rax
lea rax, [rbp + 0x10]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x48]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x40], rcx
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x6b
call fcn.18003fc00
lea ecx, [rdi - 1]
mov dword [rsp + 0x60], 0
movsxd rsi, ecx
mov qword [rbp + 0x28], rsi
test ecx, ecx
jle 0x180040e72
mov rdx, qword [rbp + 0x48]
xor r12d, r12d
mov rdi, qword [rbp - 0x20]
xor r13d, r13d
sub rdi, rdx
mov qword [rbp - 0x68], rdx
add rdi, r14
mov dword [rsp + 0x60], ecx
mov qword [rbp + 0x10], rdi
nop word [rax + rax]
movzx eax, byte [rdx]
mov byte [rdi + rdx], al
mov rax, qword [rbp - 0x28]
cmp qword [rax + r13], 0
je 0x180040e29
mov r9, qword [rbp - 0x50]
test r9, r9
je 0x180040e29
mov r11, qword [rbp - 0x48]
test r11, r11
je 0x180040e29
mov r15d, 0xd8
nop word [rax + rax]
mov eax, r15d
sub eax, 0xd6
je 0x180040dfa
sub eax, 1
je 0x180040de6
cmp eax, 1
jne 0x180040e0d
mov rdi, qword [rbp - 0x58]
mov rax, qword [rdi]
test rax, rax
jne 0x180040dd4
cmp qword [r9], rax
jne 0x180040dd4
cmp qword [r11], rax
jne 0x180040dd4
mov r14d, 0xd2
nop dword [rax + rax]
cmp r14d, 0xd2
je 0x180040d8c
cmp r14d, 0x169
je 0x180040d6d
cmp r14d, 0x200
jne 0x180040db9
mov r10, qword [rsp + 0x68]
xor esi, esi
cmp dword [r10], esi
jle 0x180040db9
mov r8, qword [rbp - 0x58]
xor edx, edx
xor edi, edi
nop dword [rax + rax]
mov ecx, 0x7f
mov eax, ecx
sub eax, 0x7d
je 0x180040d48
sub eax, 1
je 0x180040d43
cmp eax, 1
jne 0x180040d52
mov rax, qword [r8]
mov qword [rdi + rax], 0
jmp 0x180040d52
mov rax, qword [r9]
jmp 0x180040d4b
mov rax, qword [r11]
mov dword [rdx + rax], 0
dec ecx
cmp ecx, 0x7c
ja 0x180040d25
inc esi
add rdi, 8
add rdx, 4
cmp esi, dword [r10]
jl 0x180040d20
mov rdi, r8
jmp 0x180040db9
mov rax, qword [rsp + 0x68]
movsxd rcx, dword [rax]
shl rcx, 2
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r11, qword [rbp - 0x48]
mov r9, qword [rbp - 0x50]
mov qword [r11], rax
jmp 0x180040db9
mov rsi, qword [rsp + 0x68]
movsxd rcx, dword [rsi]
shl rcx, 3
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rdi], rax
movsxd rcx, dword [rsi]
shl rcx, 2
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r9, qword [rbp - 0x50]
mov r11, qword [rbp - 0x48]
mov qword [r9], rax
add r14d, 0x97
cmp r14d, 0x297
jb 0x180040ce0
mov rax, qword [rdi]
mov r14, qword [rbp + 0x30]
lea rdx, [rax + r14*8]
mov rax, qword [rbp - 0x28]
mov rcx, qword [rax + r13]
mov qword [rdx + r13], rcx
jmp 0x180040e0d
mov rax, qword [rbp + 0x38]
lea rdi, [r12 + r14*4]
mov rdx, qword [r9]
mov ecx, dword [r12 + rax]
mov dword [rdi + rdx], ecx
jmp 0x180040e0d
mov rax, qword [r11]
lea rdx, [rax + r14*4]
mov rax, qword [rbp + 0x40]
mov ecx, dword [r12 + rax]
mov dword [rdx + r12], ecx
dec r15d
cmp r15d, 0xd5
ja 0x180040c90
mov rdx, qword [rbp - 0x68]
mov rdi, qword [rbp + 0x10]
mov rsi, qword [rbp + 0x28]
inc rdx
add r13, 8
add r12, 4
mov qword [rbp - 0x68], rdx
sub rsi, 1
mov qword [rbp + 0x28], rsi
jne 0x180040c50
mov rsi, qword [rbp - 8]
mov r8d, dword [rsp + 0x78]
mov edi, dword [rbp - 0x78]
mov r15, qword [rbp + 0xc8]
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
mov r9, qword [rbp - 0x48]
mov r12, qword [rbp + 0xb8]
mov r13d, dword [rbp - 0x30]
jmp 0x180040e9b
mov rsi, qword [rbp - 8]
mov r8d, dword [rsp + 0x78]
mov r10, qword [rbp - 0x58]
mov r11, qword [rbp - 0x50]
mov r9, qword [rbp - 0x48]
jmp 0x180040e9b
mov rax, qword [rbp - 0x40]
mov byte [rsi + rax + 2], 0
jmp 0x180040e9b
mov dword [rbp + 8], 0
inc ebx
cmp ebx, 0x12f
jb 0x180040a00
mov edx, dword [rbp - 0x70]
mov rdi, qword [rsp + 0x68]
mov r9, qword [rbp - 0x48]
add edx, 0xb51d
mov dword [rbp - 0x70], edx
cmp edx, 0x21f57
jbe 0x180040970
mov edx, dword [rdi]
mov rax, qword [rbp - 0x20]
inc r8d
inc rsi
mov dword [rsp + 0x78], r8d
mov ecx, edx
mov qword [rbp - 8], rsi
cmp r8d, edx
jl 0x180040940
mov rbx, qword [rbp - 0x10]
mov r14, qword [rbp - 0x20]
mov r13, qword [rbp + 0x60]
mov rsi, qword [rbp + 0x20]
mov eax, dword [rbp + 0xc]
mov r10, qword [rbp - 0x58]
add eax, 0xf
mov r11, qword [rbp - 0x50]
mov r8, qword [rsp + 0x68]
mov r9, qword [rbp - 0x48]
mov rdx, qword [rbp + 0x50]
mov dword [rbp + 0xc], eax
cmp eax, 0x128
jb 0x1800406f0
mov r15d, dword [rsp + 0x60]
mov edi, dword [rsp + 0x70]
jmp 0x18003fffd
cmp dword [r8], 0x64
jge 0x180040f8b
mov ecx, 0x8e
nop dword [rax]
mov eax, ecx
sub eax, 0x8e
je 0x180040f71
cmp eax, 1
jne 0x180040f7c
lea rax, [rbp + 0xf30]
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x1330]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x1830]
mov qword [rbp + 0x48], rax
jmp 0x180040f7c
lea rax, [rbp + 0x730]
mov qword [rbp - 0x28], rax
inc ecx
cmp ecx, 0x90
jb 0x180040f40
jmp 0x180040efa
mov r14d, 0x5c
mov eax, r14d
sub eax, 0x5b
je 0x1800410dc
cmp eax, 1
jne 0x180041140
mov esi, dword [r8]
mov edi, 0x24
shl esi, 3
cmp edi, 3
je 0x180040fe8
cmp edi, 0x24
je 0x180040fcd
cmp edi, 0x1c8
je 0x180040ffd
cmp edi, 0x1560
je 0x180040ffd
jmp 0x180040fef
movsxd rcx, esi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x1800412ad
mov qword [rbp + 0x98], rax
jmp 0x180040fef
mov byte [rbp + 0x98], 1
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x180040fb1
mov r15, qword [rsp + 0x68]
mov edi, 0x24
mov rax, qword [rbp + 0x98]
mov qword [rbp - 0x28], rax
mov esi, dword [r15]
shl esi, 2
cmp edi, 3
je 0x18004104f
cmp edi, 0x24
je 0x180041034
cmp edi, 0x1c8
je 0x180041064
cmp edi, 0x1560
je 0x180041064
jmp 0x180041056
movsxd rcx, esi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x1800412d6
mov qword [rbp + 0xa0], rax
jmp 0x180041056
mov byte [rbp + 0xa0], 1
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x180041018
mov rax, qword [rbp + 0xa0]
mov edi, 0x24
mov esi, dword [r15]
mov qword [rbp + 0x38], rax
shl esi, 2
nop word [rax + rax]
cmp edi, 3
je 0x1800410b7
cmp edi, 0x24
je 0x18004109c
cmp edi, 0x1c8
je 0x1800410cc
cmp edi, 0x1560
je 0x1800410cc
jmp 0x1800410be
movsxd rcx, esi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x1800412ff
mov qword [rbp + 0xa8], rax
jmp 0x1800410be
mov byte [rbp + 0xa8], 1
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x180041080
mov rax, qword [rbp + 0xa8]
mov r8, r15
mov qword [rbp + 0x40], rax
jmp 0x180041140
movsxd rsi, dword [r8]
mov edi, 0x24
cmp edi, 3
je 0x18004111b
cmp edi, 0x24
je 0x180041100
cmp edi, 0x1c8
je 0x180041130
cmp edi, 0x1560
je 0x180041130
jmp 0x180041122
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
test rax, rax
je 0x180041328
mov qword [rbp + 0xb0], rax
jmp 0x180041122
mov byte [rbp + 0xb0], 1
add edi, 0x153c
cmp edi, 0x54f0
jbe 0x1800410e4
mov rax, qword [rbp + 0xb0]
mov r8, qword [rsp + 0x68]
mov qword [rbp + 0x48], rax
dec r14d
cmp r14d, 0x5a
ja 0x180040f91
mov r14, qword [rbp - 0x20]
jmp 0x180040ef6
mov dword [rbp - 0x30], 0
jmp 0x180040efa
mov rax, qword [rbp - 0x38]
lea rdx, [rbp + 0x410]
cmp rax, rdx
je 0x180040001
mov rbx, qword [rbp]
mov edi, 0xa2
nop
cmp edi, 0xa2
je 0x1800411c2
cmp edi, 0x5388
jne 0x1800411e7
mov rcx, qword [rbp + 0x18]
xor esi, esi
mov dword [rsp + 0x28], 0x35
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rsi
xor edx, edx
call fcn.1800b5940
mov dword [rsp + 0x28], 0x35
mov rcx, rbx
mov qword [rsp + 0x20], rsi
jmp 0x1800411d6
mov dword [rsp + 0x28], 0x35
mov rcx, rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call fcn.1800b5940
mov rax, qword [rbp - 0x38]
add edi, 0x52e6
cmp edi, 0xa5cc
jbe 0x180041180
mov rbx, qword [rbp - 0x10]
mov edi, dword [rsp + 0x70]
jmp 0x18003fff8
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor eax, eax
jmp 0x18003fd17
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8d, esi
lea rdx, str.vim.fault.MethodDisabled
mov rcx, rax
call fcn.1800ba9c0
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3