Function at 0x14001ac70
Capabilities:
Terminate process
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1d8
lea rax, [rsp + 0x80]
mov rcx, rax
mov qword [rsp + 0x40], rax
call fcn.140012b50
mov rax, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
mov qword [rsp + 0x58], rax
mov ebx, r13d
test r13d, r13d
jne 0x14001af51
lea rax, [rsp + 0x150]
mov qword [rsp + 0x48], rax
lea rax, [0x1400284a3]
pxor xmm0, xmm0
mov r13d, dword [0x140060788]
mov ecx, 6
mov qword [rsp + 0x100], rax
mov r12, qword [0x140060780]
movabs rax, 0xfe1000000001
movups xmmword [rsp + 0x108], xmm0
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x10c], rax
movups xmmword [rsp + 0x118], xmm0
movups xmmword [rsp + 0x128], xmm0
movups xmmword [rsp + 0x138], xmm0
call fcn.140011790
mov rsi, qword [0x140060790]
mov rdx, rax
test r13d, r13d
jg 0x14001adc7
mov ecx, 0x18
call fcn.140011340
xor r9d, r9d
xor eax, eax
lea rdi, [rsp + 0x164]
mov ecx, 0x19
rep stosd dword [rdi], eax
lea rax, str.string_index_out_of_range:
mov dword [rsp + 0x160], 0xfe07
mov qword [rsp + 0x150], rax
mov rax, qword [0x14002bcc0]
mov dword [rsp + 0x168], r9d
mov qword [rsp + 0x158], rax
lea rax, [0x140028945]
mov qword [rsp + 0x178], rax
mov rax, qword [0x14002bb80]
mov dword [rsp + 0x188], 0xfe07
mov qword [rsp + 0x180], rax
mov dword [rsp + 0x190], r13d
jmp 0x14001c2ca
xor eax, eax
cmp r13d, 0xffff
mov r15, rdx
mov rbx, rdx
setg al
lea rbp, [0x140028ea0]
shl eax, 4
mov r14d, eax
lea rax, [rdx + 5]
mov qword [rsp + 0x38], rax
mov eax, r13d
shr eax, 0x10
mov dword [rsp + 0x50], eax
mov r9d, dword [rsp + 0x50]
cmp r13d, 0xffff
lea rax, [0x140060700]
mov r8, qword [0x140060708]
movsxd rdx, dword [rax]
mov r10d, dword [0x140060714]
mov ecx, r14d
cmovle r9d, r13d
cmp r9d, 0xff
jbe 0x14001ae35
lea ecx, [r14 + 8]
shr r9d, 8
cmp r10d, r9d
jle 0x14001c4ae
movsxd rax, r9d
imul rax, rdx
movzx eax, byte [r8 + rax]
add eax, ecx
cmp eax, 0x20
je 0x14001af11
add eax, 1
or edx, 0xffffffff
mov ecx, eax
shl edx, cl
mov edi, edx
not edi
movsxd rdx, dword [rsi + 8]
mov rcx, qword [rsi]
lea rax, [rdx*8]
sub rax, rdx
call qword [rbp + rax*8 + 0x18]
and eax, edi
cmp eax, r13d
jae 0x14001ae63
movdqa xmm4, xmmword [0x1400606c0]
movdqa xmm5, xmmword [0x1400606d0]
movups xmmword [rsp + 0x158], xmm4
movups xmmword [rsp + 0x168], xmm5
mov dword [rsp + 0x178], eax
lea rax, [rsp + 0xc0]
mov rsi, qword [rsp + 0x48]
xor r9d, r9d
mov byte [rsp + 0x150], 0
mov ecx, 0xc
mov rdi, rax
rep movsd dword [rdi], dword [rsi]
cmp byte [rsp + 0xc0], 0
jne 0x14001aeed
movsxd r9, dword [rsp + 0xe8]
test r9d, r9d
js 0x14001ad4f
cmp r13d, r9d
jle 0x14001ad4f
movzx edx, byte [r12 + r9]
add r15, 1
mov byte [r15 - 1], dl
cmp qword [rsp + 0x38], r15
je 0x14001b256
mov rsi, qword [0x140060790]
jmp 0x14001adf9
movsxd rdx, dword [rsi + 8]
mov rcx, qword [rsi]
lea rax, [rdx*8]
sub rax, rdx
call qword [rbp + rax*8 + 0x18]
cmp eax, r13d
jae 0x14001af11
movdqa xmm2, xmmword [0x1400606c0]
movdqa xmm3, xmmword [0x1400606d0]
movups xmmword [rsp + 0x158], xmm2
movups xmmword [rsp + 0x168], xmm3
jmp 0x14001aea0
mov rdi, qword [0x140028ee0]
mov ebp, dword [0x140060728]
lea rax, [0x140028927]
mov qword [rsp + 0x150], rax
mov rsi, qword [0x140060720]
mov qword [rsp + 0x158], rdi
test ebp, ebp
jne 0x14001b1c7
lea rax, [0x1400284a3]
mov qword [rsp + 0x178], rdi
mov qword [rsp + 0x160], rax
mov rax, qword [0x14002bc00]
mov qword [rsp + 0x168], rax
lea rax, [0x140028745]
mov qword [rsp + 0x170], rax
lea rcx, [0x1400284a3]
xor ebp, ebp
mov eax, 1
mov edx, 1
mov qword [rsp + 0x180], rcx
mov ecx, 0x40
lea rsi, [rsp + 0x150]
mov dword [rsp + 0x188], ebp
movsxd r12, r13d
mov dword [rsp + 0x18c], eax
call fcn.14000c0a0
mov qword [rsp + 0x48], rsi
mov ecx, 0x10
mov rdi, rax
mov r15, rax
mov qword [rsp + 0x78], rax
rep movsd dword [rdi], dword [rsi]
mov ecx, 0x30
xor edi, edi
mov esi, r13d
call fcn.140011ce0
mov dword [rsp + 0xa0], 8
mov qword [rsp + 0xa8], rax
lea eax, [r13 + 1]
mov qword [rsp + 0xb0], 0
cdqe
mov rcx, rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0xb8], 6
call fcn.140011790
mov rdx, qword [rsp + 0x58]
mov r8, r12
mov rcx, rax
mov rbp, rax
call sub.ucrtbase.dll_memcpy
mov qword [rsp + 0x60], r15
xor eax, eax
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x70], r13
mov byte [rbp + r12], 0
mov qword [rsp + 0x68], r12
mov r12d, ebx
mov rbx, qword [rsp + 0x60]
mov r14d, dword [rbx + 8]
mov r15, qword [rbx]
mov ebx, dword [rbx + 0x18]
cmp r12d, r14d
jl 0x14001b0f7
cmp r12d, eax
jle 0x14001b0f7
xor edi, edi
movsxd r13, r14d
nop word [rax + rax]
movsxd rdx, edi
add rdx, rbp
nop word cs:[rax + rax]
test r14d, r14d
jle 0x14001b1c0
xor eax, eax
jmp 0x14001b0dc
lea rcx, [rax + 1]
cmp r13, rcx
je 0x14001b120
mov rax, rcx
movzx ecx, byte [r15 + rax]
cmp byte [rdx + rax], cl
je 0x14001b0d0
cmp r14d, eax
je 0x14001b128
add edi, 1
add rdx, 1
cmp r12d, edi
jne 0x14001b0c0
add qword [rsp + 0x60], 0x20
cmp dword [rsp + 0x38], 2
mov eax, 0xffffffff
je 0x14001b66f
mov dword [rsp + 0x38], 2
jmp 0x14001b08c
add eax, 1
cmp r14d, eax
jne 0x14001b0eb
test r14d, r14d
je 0x14001b180
movsxd rcx, edi
mov r8d, r14d
mov edx, 0x7f
add rcx, rbp
call sub.ucrtbase.dll_memset
mov eax, dword [rsp + 0x38]
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xa0]
mov dword [rsp + 0x100], edi
add edi, r14d
mov dword [rsp + 0x104], eax
call fcn.140011f30
mov eax, ebx
sub eax, r14d
add esi, eax
cmp r12d, edi
jg 0x14001b0b0
jmp 0x14001b0f7
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x100], edi
add esi, ebx
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xa0]
mov dword [rsp + 0x104], eax
call fcn.140011f30
cmp r12d, edi
jg 0x14001b0b0
jmp 0x14001b0f7
xor eax, eax
jmp 0x14001b0e6
lea ecx, [rbp + 1]
movsxd r12, ebp
movsxd rcx, ecx
call fcn.140011790
mov rdx, rsi
mov r8, r12
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov dword [rsp + 0x168], ebp
xor ebp, ebp
mov rsi, qword [0x140060720]
mov dword [rsp + 0x16c], ebp
mov ebp, dword [0x140060728]
mov byte [rax + r12], 0
mov qword [rsp + 0x160], rax
lea rax, [0x140028745]
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rdi
test ebp, ebp
je 0x14001afb9
lea ecx, [rbp + 1]
movsxd rdi, ebp
movsxd rcx, ecx
call fcn.140011790
mov r8, rdi
mov rdx, rsi
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov byte [rax + rdi], 0
mov rcx, rax
xor eax, eax
jmp 0x14001afc7
mov rdx, rbx
mov rdi, qword [rsp + 0x40]
mov rbx, rax
lea rax, str..exe
mov byte [rdx + 5], 0
mov qword [rsp + 0x128], rax
mov rcx, rdi
mov rax, qword [0x14002bb88]
mov qword [rsp + 0x118], rdx
lea rdx, [rsp + 0x100]
mov qword [rsp + 0x130], rax
mov dword [rsp + 0x120], 5
call fcn.14001d570
mov edx, 1
mov ecx, 0x10
mov rsi, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x88]
call fcn.14000c0a0
mov rcx, rdi
mov r8d, 6
mov r12, rsi
mov qword [rax], rsi
lea rdx, str.TMPDIR
mov qword [rax + 8], rbp
call fcn.14001e9d0
mov r15, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
mov rdi, r15
movsxd rsi, r13d
test r13d, r13d
je 0x14001b597
add r13d, 0x32
mov eax, 0
cmovs r13d, eax
movsxd rcx, r13d
call fcn.140011ce0
mov dword [rsp + 0x168], r13d
mov dword [rsp + 0x150], 1
mov r14, rax
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x160], 0
mov dword [rsp + 0x16c], 1
test esi, esi
jle 0x14001c48a
lea eax, [rsi - 1]
cdqe
movzx edx, byte [rdi + rax]
cmp dl, 0x5c
je 0x14001b658
cmp dl, 0x2f
je 0x14001b658
cmp eax, 0xffffffff
je 0x14001b665
add eax, 1
mov rcx, qword [rsp + 0x40]
mov r8d, esi
mov rdx, rdi
mov dword [rsp + 0x20], eax
xor r9d, r9d
call fcn.140021220
mov rsi, qword [rsp + 0x88]
mov r15, qword [rsp + 0x80]
mov rdi, rsi
mov eax, esi
shr rdi, 0x20
test esi, esi
je 0x14001b402
jle 0x14001b402
test r15, r15
je 0x14001b402
cmp r13d, esi
jge 0x14001b3df
add r13d, r13d
cmp r13d, eax
jl 0x14001b3bc
movsxd rcx, r13d
call fcn.140011340
mov dword [rsp + 0x168], r13d
mov qword [rsp + 0x158], rax
mov r14, rax
cmp r14, r15
je 0x14001c54b
test r14, r14
je 0x14001b3fb
movsxd r8, esi
mov rdx, r15
mov rcx, r14
call sub.ucrtbase.dll_memcpy
mov dword [rsp + 0x164], esi
mov r8d, dword [0x140060728]
test r8d, r8d
je 0x14001b426
mov rdx, qword [0x140060720]
jle 0x14001b426
test rdx, rdx
je 0x14001b426
mov rcx, qword [rsp + 0x48]
call fcn.140012090
test ebp, ebp
je 0x14001b441
jle 0x14001b441
test r12, r12
je 0x14001b441
mov rcx, qword [rsp + 0x48]
mov r8d, ebp
mov rdx, r12
call fcn.140012090
mov rcx, qword [rsp + 0x48]
mov rdx, rbx
mov byte [rsp + 0xc0], 0
call fcn.140011f30
mov r13d, dword [rsp + 0x164]
mov rbp, qword [rsp + 0x158]
test r13d, r13d
je 0x14001b7ab
movsxd rsi, r13d
mov rcx, rsi
call fcn.140011790
mov r8, rsi
mov rdx, rbp
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov r12, rax
test r13d, r13d
jle 0x14001b49b
xor r11d, r11d
mov dword [rsp + 0x164], r11d
sub r13d, 1
cmp edi, 0xfa1d05ee
je 0x14001bfeb
mov rsi, qword [rsp + 0x40]
mov rcx, rsi
call fcn.140012b50
mov rdx, rsi
mov rcx, rbx
call fcn.140012210
cmp byte [rsp + 0xc0], 0
jne 0x14001b805
mov ebp, dword [0x140060758]
mov rdx, qword [0x140060750]
mov r15, qword [rsp + 0xe8]
mov r14d, dword [rsp + 0xf0]
lea eax, [rbp + rbp*2]
mov qword [rsp + 0x38], rdx
cmp eax, 3
jle 0x14001b7c1
mov ebx, ebp
and ebx, 3
jne 0x14001b7c1
sar eax, 2
lea ecx, [rax + 1]
mov edi, eax
movsxd rcx, ecx
call fcn.140011790
mov rsi, rax
movsxd rax, edi
mov byte [rsi + rax], 0
cmp ebp, 3
jle 0x14001b53c
mov rdx, qword [rsp + 0x38]
mov r8d, ebp
mov rcx, rsi
call fcn.14000eb80
mov ebx, eax
test rsi, rsi
je 0x14001c586
mov r8d, dword [0x140060748]
mov rdx, qword [0x140060740]
lea eax, [r8 + r8*2]
cmp eax, 3
jg 0x14001b7e5
xor ecx, ecx
call fcn.140011ce0
test ebx, ebx
je 0x14001bfdb
mov r9d, ebx
mov r8, rsi
mov edx, r14d
mov rcx, r15
call fcn.14001f490
add eax, 1
je 0x14001bfb0
xor ebp, ebp
lea rdi, [0x1400284a3]
jmp 0x14001bbe9
mov rcx, qword [rsp + 0x40]
mov r8d, 4
lea rdx, str.TEMP
call fcn.14001e9d0
mov r15, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
mov rdi, r15
movsxd rsi, r13d
test r13d, r13d
jne 0x14001b303
mov rcx, qword [rsp + 0x40]
mov r8d, 3
lea rdx, [0x140028955]
call fcn.14001e9d0
mov r13, qword [rsp + 0x88]
mov r15, qword [rsp + 0x80]
movsxd rsi, r13d
test r13d, r13d
jne 0x14001c028
mov ecx, 0x38
mov r13d, 0x38
mov esi, 6
call fcn.140011ce0
lea rdi, str.C:_tmp
mov dword [rsp + 0x150], 1
mov qword [rsp + 0x158], rax
mov r14, rax
mov eax, 0x20000007
mov qword [rsp + 0x160], 0
shl rax, 3
mov qword [rsp + 0x168], rax
jmp 0x14001b355
sub rax, 1
cmp eax, 0xffffffff
jne 0x14001b35a
mov edi, 1
jmp 0x14001b402
mov eax, dword [rsp + 0xb4]
mov ebx, r12d
mov r13, qword [rsp + 0x70]
mov r12, qword [rsp + 0x68]
mov dword [rsp + 0x38], eax
test eax, eax
je 0x14001bb3a
mov r15, qword [rsp + 0xa8]
movsxd rdx, dword [rsp + 0x38]
lea r9, [0x1400018e0]
movsxd r8, dword [rsp + 0xa0]
mov rcx, r15
call sub.ucrtbase.dll_qsort
lea eax, [rsi + 1]
cdqe
mov rcx, rax
mov qword [rsp + 0x50], rax
call fcn.140011790
mov rdi, rax
mov eax, dword [r15]
mov dword [rsp + 0x60], eax
mov eax, dword [r15 + 4]
mov dword [rsp + 0x68], eax
test r13d, r13d
jle 0x14001b843
xor r9d, r9d
xor r12d, r12d
xor r14d, r14d
jmp 0x14001b70e
mov rdx, qword [rsp + 0x58]
movsxd rax, r14d
movzx edx, byte [rdx + rax]
movsxd rax, r9d
add r9d, 1
mov byte [rdi + rax], dl
add r14d, 1
cmp ebx, r14d
jle 0x14001b843
cmp dword [rsp + 0x60], r14d
jne 0x14001b6eb
movsxd rax, dword [rsp + 0x68]
mov rdx, qword [rsp + 0x78]
shl rax, 4
mov ecx, dword [rdx + rax + 8]
lea rax, [rdx + rax + 0x10]
mov edx, dword [rax + 8]
mov r8, qword [rax]
mov dword [rsp + 0x70], ecx
test edx, edx
jle 0x14001b77a
lea ecx, [rdx - 1]
movsxd r11, r9d
cmp ecx, 6
jbe 0x14001b75d
lea rax, [rdi + r11]
lea rbp, [r8 + 1]
mov r10, rax
sub r10, rbp
cmp r10, 0xe
ja 0x14001b9ce
movsxd rcx, edx
xor eax, eax
add r11, rdi
movzx r10d, byte [r8 + rax]
mov byte [r11 + rax], r10b
add rax, 1
cmp rcx, rax
jne 0x14001b765
add r9d, edx
mov eax, dword [rsp + 0x70]
add r12d, 1
lea r14d, [rax + r14 - 1]
cmp dword [rsp + 0x38], r12d
jle 0x14001b701
movsxd rax, r12d
lea rax, [r15 + rax*8]
mov edx, dword [rax]
mov eax, dword [rax + 4]
mov dword [rsp + 0x60], edx
mov dword [rsp + 0x68], eax
jmp 0x14001b701
mov ecx, 1
or r13d, 0xffffffff
call fcn.140011ce0
mov r12, rax
jmp 0x14001b49f
mov r8d, dword [0x140060748]
mov rdx, qword [0x140060740]
lea eax, [r8 + r8*2]
cmp eax, 3
jle 0x14001bfcd
lea rsi, [0x1400284a3]
xor ebx, ebx
mov ebp, r8d
and ebp, 3
je 0x14001bb71
xor ecx, ecx
call fcn.140011ce0
test ebx, ebx
je 0x14001b589
jmp 0x14001b56f
mov rdi, qword [rsp + 0x48]
mov ecx, 0xa
mov rsi, rbx
rep movsd dword [rdi], dword [rsi]
mov rdx, qword [rsp + 0x158]
movsxd rax, dword [rsp + 0x160]
mov rbx, qword [rsp + 0x40]
shl rax, 4
lea r8, [0x140028e00]
mov rcx, rbx
call qword [r8 + rax]
mov rcx, rbx
call fcn.14000e9f0
movsxd r12, esi
mov byte [rdi + r12], 0
test rdi, rdi
je 0x14001c586
mov rbx, qword [0x140060720]
mov ebp, dword [0x140060728]
cmp ebp, esi
je 0x14001b8f2
jle 0x14001b916
mov dword [rsp + 0x20], ebp
mov r9, rbx
mov r8d, esi
mov rdx, rdi
lea rcx, [rsp + 0x100]
call fcn.140021c40
cmp byte [rsp + 0x100], 0
jne 0x14001bb0b
mov dword [rsp + 0x20], esi
mov rcx, qword [rsp + 0x40]
mov r8d, esi
mov rdx, rdi
mov eax, dword [rsp + 0x128]
lea r9d, [rax + 1]
call fcn.140021220
mov rbx, qword [rsp + 0x80]
mov ebp, dword [rsp + 0x88]
cmp ebp, 2
jle 0x14001acc6
cmp byte [rbx], 0x76
jne 0x14001acc6
cmp byte [rbx + 1], 0x74
jne 0x14001acc6
cmp byte [rbx + 2], 0x5f
jne 0x14001acc6
xor ecx, ecx
call sub.ucrtbase.dll_exit
test ebp, ebp
jle 0x14001b904
lea eax, [rbp - 1]
cdqe
movzx edx, byte [rbx + rax]
cmp byte [rdi + rax], dl
jne 0x14001b916
movsxd r8, ebp
mov rdx, rbx
mov rcx, rdi
call sub.ucrtbase.dll_memcmp
test eax, eax
je 0x14001b8c5
test ebp, ebp
jle 0x14001b940
mov eax, esi
movsxd rcx, ebp
xor edx, edx
sub eax, ebp
cdqe
add rax, rdi
movzx r11d, byte [rax + rdx]
cmp byte [rbx + rdx], r11b
jne 0x14001b86f
add rdx, 1
cmp rcx, rdx
jne 0x14001b928
lea eax, [rsi - 1]
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov r8d, esi
mov dword [rsp + 0x20], eax
mov rdx, rdi
call fcn.140021220
mov eax, dword [0x140060728]
mov rsi, qword [rsp + 0x88]
lea rcx, [rsp + 0x100]
mov rdi, qword [rsp + 0x80]
mov r9, qword [0x140060720]
mov dword [rsp + 0x20], eax
mov r8d, esi
mov ebp, esi
mov rdx, rdi
call fcn.140021c40
cmp byte [rsp + 0x100], 0
je 0x14001b897
test esi, esi
je 0x14001acc6
lea ecx, [rsi + 1]
movsxd rsi, esi
movsxd rcx, ecx
call fcn.140011790
mov r8, rsi
mov rdx, rdi
mov rbx, rax
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov byte [rbx + rsi], 0
jmp 0x14001b8c5
cmp ecx, 0xe
jbe 0x14001c577
mov r10d, edx
xor ecx, ecx
shr r10d, 4
shl r10, 4
movdqu xmm1, xmmword [r8 + rcx]
movups xmmword [rax + rcx], xmm1
add rcx, 0x10
cmp r10, rcx
jne 0x14001b9e4
mov eax, edx
and eax, 0xfffffff0
mov r10d, eax
lea ecx, [rax + r9]
cmp eax, edx
je 0x14001b777
mov ebp, edx
sub ebp, eax
lea r13d, [rbp - 1]
cmp r13d, 6
jbe 0x14001ba3b
mov r13, qword [r8 + r10]
add r10, rdi
mov qword [r10 + r11], r13
mov r10d, ebp
and r10d, 0xfffffff8
add eax, r10d
add ecx, r10d
and bpl, 7
je 0x14001b777
movsxd r10, eax
movzx r11d, byte [r8 + r10]
movsxd r10, ecx
mov byte [rdi + r10], r11b
lea r10d, [rax + 1]
lea r11d, [rcx + 1]
cmp edx, r10d
jle 0x14001b777
movsxd r10, r10d
movsxd r11, r11d
movzx r10d, byte [r8 + r10]
mov byte [rdi + r11], r10b
lea r10d, [rax + 2]
lea r11d, [rcx + 2]
cmp edx, r10d
jle 0x14001b777
movsxd r10, r10d
movsxd r11, r11d
movzx r10d, byte [r8 + r10]
mov byte [rdi + r11], r10b
lea r10d, [rax + 3]
lea r11d, [rcx + 3]
cmp edx, r10d
jle 0x14001b777
movsxd r10, r10d
movsxd r11, r11d
movzx r10d, byte [r8 + r10]
mov byte [rdi + r11], r10b
lea r10d, [rax + 4]
lea r11d, [rcx + 4]
cmp edx, r10d
jle 0x14001b777
movsxd r10, r10d
movsxd r11, r11d
movzx r10d, byte [r8 + r10]
mov byte [rdi + r11], r10b
lea r10d, [rax + 5]
lea r11d, [rcx + 5]
cmp edx, r10d
jle 0x14001b777
movsxd r10, r10d
movsxd r11, r11d
add eax, 6
add ecx, 6
movzx r10d, byte [r8 + r10]
mov byte [rdi + r11], r10b
cmp edx, eax
jle 0x14001b777
cdqe
movzx r8d, byte [r8 + rax]
movsxd rax, ecx
mov byte [rdi + rax], r8b
jmp 0x14001b777
test esi, esi
je 0x14001acc6
mov rcx, qword [rsp + 0x50]
mov ebp, esi
call fcn.140011790
mov r8, r12
mov rdx, rdi
mov rbx, rax
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov byte [rbx + r12], 0
jmp 0x14001b8c5
mov rcx, qword [rsp + 0x50]
mov esi, r13d
call fcn.140011790
mov rdx, qword [rsp + 0x58]
mov r8, r12
mov rdi, rax
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov byte [rdi + r12], 0
mov rbx, qword [0x140060720]
mov ebp, dword [0x140060728]
jmp 0x14001b861
sar eax, 2
mov dword [rsp + 0x58], r8d
lea ecx, [rax + 1]
mov qword [rsp + 0x50], rdx
movsxd rcx, ecx
mov dword [rsp + 0x38], eax
call fcn.140011790
mov r8d, dword [rsp + 0x58]
mov rdi, rax
movsxd rax, dword [rsp + 0x38]
mov byte [rdi + rax], 0
cmp r8d, 3
jle 0x14001bbb3
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
call fcn.14000eb80
mov ebp, eax
test rdi, rdi
je 0x14001c586
xor ecx, ecx
call fcn.140011ce0
test ebx, ebx
jne 0x14001c2fa
test ebp, ebp
je 0x14001bbe9
mov r9d, ebp
mov r8, rdi
mov edx, r14d
mov rcx, r15
call fcn.14001f490
add eax, 1
je 0x14001bfb0
mov r9d, ebx
mov r8, rsi
mov edx, r14d
mov rcx, r15
call fcn.14001f490
cmp eax, 0xffffffff
je 0x14001c2e9
mov rdx, r15
mov dword [rsp + 0x20], r14d
mov r15, qword [rsp + 0x40]
mov r8d, r14d
lea r9d, [rbx + rax]
mov rcx, r15
call fcn.140021220
mov rsi, qword [rsp + 0x88]
mov r9d, ebp
mov r8, rdi
mov r14, qword [rsp + 0x80]
movsxd rbx, esi
mov edx, ebx
mov rcx, r14
call fcn.14001f490
cmp eax, 0xffffffff
je 0x14001bc6c
mov dword [rsp + 0x20], eax
mov rdx, r14
xor r9d, r9d
mov r8d, esi
mov rcx, r15
call fcn.140021220
mov r14, qword [rsp + 0x80]
movsxd rbx, dword [rsp + 0x88]
test ebx, ebx
je 0x14001c2e9
mov ecx, 0
cmovns rcx, rbx
call fcn.140011ce0
movsxd r8, ebx
mov rdx, r14
mov rcx, rax
mov rsi, rax
call sub.ucrtbase.dll_memcpy
mov r15d, dword [0x140060738]
mov rdx, qword [0x140060730]
lea eax, [r15 + r15*2]
cmp eax, 3
jle 0x14001bcb6
mov ebp, r15d
and ebp, 3
je 0x14001c319
xor ecx, ecx
call fcn.140011ce0
xor r10d, r10d
mov dword [rsp + 0xa0], 1
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], r10
test ebx, ebx
jg 0x14001c253
mov ecx, 1
call fcn.140011790
mov byte [rax], 0
xor ecx, ecx
call fcn.140011ce0
xor edx, edx
mov rbx, rax
xor r8d, r8d
mov rcx, rbx
mov qword [rsp + 0x98], r8
lea r8, [rsp + 0x98]
call fcn.14000f020
mov rsi, rax
test rax, rax
je 0x14001c1fd
mov rdx, qword [rsp + 0x98]
mov r8d, 0x80000000
cmp r8, rdx
jb 0x14001c105
mov rcx, qword [rsp + 0x48]
mov edi, edx
mov rdx, qword [rsp + 0x40]
mov eax, r13d
movdqa xmm3, xmmword [0x1400606c0]
movdqa xmm4, xmmword [0x1400606d0]
mov r9d, 2
lea r8, [0x140028995]
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x88], rax
movups xmmword [rsp + 0x158], xmm3
movups xmmword [rsp + 0x168], xmm4
call fcn.14001eab0
cmp byte [rsp + 0x150], 0
jne 0x14001bfb0
mov rbx, qword [rsp + 0x178]
mov rcx, rbx
call qword [sym.imp.ucrtbase.dll__fileno]
mov byte [rsp + 0xcc], 1
cmp byte [rsp + 0xcc], 0
mov qword [rsp + 0xc0], rbx
mov dword [rsp + 0xc8], eax
je 0x14001bfa6
mov r9, rbx
movsxd r8, edi
mov edx, 1
mov rcx, rsi
call sub.ucrtbase.dll_fwrite
test eax, eax
jne 0x14001bdfa
test edi, edi
jne 0x14001c0f6
mov rcx, rbx
call sub.ucrtbase.dll_fflush
mov rcx, rbx
call sub.ucrtbase.dll_fclose
mov r14d, dword [0x140060774]
movsxd rdi, dword [0x140060760]
mov rsi, qword [0x140060768]
test r14d, r14d
jle 0x14001c03f
mov ecx, 0x10
call fcn.140011340
mov qword [rax], r12
mov r15, rax
cmp r14d, 1
je 0x14001c035
mov eax, r14d
add rsi, rdi
mov r13d, 1
mov ebx, 2
mov qword [rsp + 0x48], rax
jmp 0x14001be74
mov rax, qword [rsp + 0x38]
add r13, 1
add rsi, rdi
mov qword [r15 + rbp], rax
mov rax, qword [rsp + 0x48]
cmp r13, rax
je 0x14001bec7
mov rax, qword [rsi]
lea rbp, [r13*8]
mov qword [rsp + 0x38], rax
cmp ebx, r13d
jg 0x14001be5a
test ebx, ebx
jg 0x14001be92
mov ebx, 2
lea eax, [r13 + 1]
cmp ebx, eax
jge 0x14001bea0
add ebx, ebx
cmp eax, ebx
jg 0x14001be9a
movsxd rcx, ebx
shl rcx, 3
call fcn.140011340
mov rcx, rax
test r15, r15
je 0x14001bec2
mov r8, rbp
mov rdx, r15
call sub.ucrtbase.dll_memcpy
mov rcx, rax
mov r15, rcx
jmp 0x14001be5a
movsxd rsi, r14d
shl rsi, 3
cmp r14d, ebx
jge 0x14001bf75
xor eax, eax
mov rcx, r12
mov rdx, r15
mov qword [r15 + rsi], rax
call qword [sym.imp.ucrtbase.dll__execvp]
mov ecx, eax
add eax, 1
jne 0x14001c030
mov rbx, qword [sym.imp.ucrtbase.dll__errno]
call rbx
mov esi, dword [rax]
call rbx
mov ecx, dword [rax]
call sub.ucrtbase.dll_strerror
mov rbx, rax
test rax, rax
je 0x14001bfba
mov rcx, rax
call sub.ucrtbase.dll_strlen
xor edx, edx
mov ecx, 0x18
mov qword [rsp + 0x150], rbx
mov dword [rsp + 0x15c], edx
mov dword [rsp + 0x158], eax
mov dword [rsp + 0x160], esi
call fcn.140011340
mov rbx, qword [rsp + 0x40]
movdqa xmm5, xmmword [rsp + 0x150]
mov rdx, rax
movups xmmword [rax], xmm5
mov rax, qword [rsp + 0x160]
mov rcx, rbx
mov qword [rdx + 0x10], rax
call fcn.1400022e0
mov rcx, rbx
call fcn.14000e9f0
add ebx, ebx
cmp r14d, ebx
jge 0x14001bf75
movsxd rcx, ebx
shl rcx, 3
call fcn.140011340
mov rcx, rax
test r15, r15
je 0x14001bf9e
mov r8, rsi
mov rdx, r15
call sub.ucrtbase.dll_memcpy
mov rcx, rax
mov r15, rcx
jmp 0x14001bed7
mov ecx, 8
call fcn.140011340
mov ecx, 1
call sub.ucrtbase.dll_exit
mov edx, 1
xor eax, eax
lea rbx, [0x1400284a3]
jmp 0x14001bf1e
xor ecx, ecx
lea rsi, [0x1400284a3]
call fcn.140011ce0
xor ebx, ebx
xor ebp, ebp
lea rdi, [0x1400284a3]
jmp 0x14001bbe9
mov ecx, 1
lea rbp, [0x140028308]
mov esi, 0x1e
call qword [sym.imp.ucrtbase.dll___acrt_iob_func]
mov rdi, rax
mov r8, rsi
mov rcx, rbp
mov r9, rdi
mov edx, 1
call sub.ucrtbase.dll_fwrite
sub rsi, rax
add rbp, rax
test rsi, rsi
jg 0x14001c005
jmp 0x14001b4ab
mov rdi, r15
jmp 0x14001b303
call sub.ucrtbase.dll_exit
mov esi, 8
jmp 0x14001bed7
xor eax, eax
lea rdi, [rsp + 0x164]
mov ecx, 0x19
rep stosd dword [rdi], eax
lea rax, str.array.slice:_invalid_slice_index__
mov dword [rsp + 0x160], 0xfe07
mov qword [rsp + 0x150], rax
mov rax, qword [0x14002bcd0]
mov dword [rsp + 0x168], 1
mov qword [rsp + 0x158], rax
lea rax, [0x140028991]
mov qword [rsp + 0x178], rax
mov rax, qword [0x14002bb80]
mov dword [rsp + 0x188], 0xfe07
mov qword [rsp + 0x180], rax
lea rax, [0x1400282a9]
mov qword [rsp + 0x1a0], rax
mov rax, qword [0x140028ee0]
mov dword [rsp + 0x190], r14d
mov qword [rsp + 0x1a8], rax
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
call fcn.14001d840
mov edx, dword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
call fcn.1400210f0
mov ecx, 0x18
call fcn.140011340
jmp 0x14001bfb0
xor eax, eax
lea rdi, [rsp + 0x164]
mov ecx, 0x19
rep stosd dword [rdi], eax
lea rax, str.decompressed_data_is_too_large__
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x168], rdx
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0x48]
mov rax, qword [0x14002bcc8]
mov qword [rsp + 0x190], r8
mov dword [rsp + 0x160], 0xfe08
mov qword [rsp + 0x158], rax
lea rax, [0x140028991]
mov qword [rsp + 0x178], rax
mov rax, qword [0x14002bb80]
mov dword [rsp + 0x188], 0xfe08
mov qword [rsp + 0x180], rax
lea rax, [0x1400282a9]
mov qword [rsp + 0x1a0], rax
mov rax, qword [0x140028ee0]
mov qword [rsp + 0x1a8], rax
call fcn.14001d840
mov rax, qword [rsp + 0x80]
xor edx, edx
mov ecx, 0x18
mov dword [rsp + 0xb0], edx
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xa8], rax
call fcn.140011340
movdqa xmm2, xmmword [rsp + 0xa0]
mov rdx, rax
movups xmmword [rax], xmm2
mov rax, qword [rsp + 0xb0]
mov qword [rdx + 0x10], rax
mov eax, 2
jmp 0x14001b824
lea rax, str.decompression_failed
xor ecx, ecx
mov qword [rsp + 0x150], rax
mov rax, qword [0x14002bc18]
mov dword [rsp + 0x160], ecx
mov ecx, 0x18
mov qword [rsp + 0x158], rax
call fcn.140011340
movdqa xmm1, xmmword [rsp + 0x150]
mov rdx, rax
movups xmmword [rax], xmm1
mov rax, qword [rsp + 0x160]
mov qword [rdx + 0x10], rax
mov eax, 2
jmp 0x14001b824
xor r14d, r14d
xor ebp, ebp
xor eax, eax
lea rdi, [rsp + 0x164]
mov ecx, 0x19
rep stosd dword [rdi], eax
lea rax, str.string_index_out_of_range:
mov dword [rsp + 0x160], 0xfe07
mov qword [rsp + 0x150], rax
mov rax, qword [0x14002bcc0]
mov dword [rsp + 0x168], ebp
mov qword [rsp + 0x158], rax
lea rax, [0x140028945]
mov qword [rsp + 0x178], rax
mov rax, qword [0x14002bb80]
mov dword [rsp + 0x188], 0xfe07
mov qword [rsp + 0x180], rax
mov dword [rsp + 0x190], r14d
lea rax, [0x1400284a3]
mov dword [rsp + 0x1ac], 1
mov qword [rsp + 0x1a0], rax
jmp 0x14001c0d3
xor ecx, ecx
xor ebx, ebx
call fcn.140011ce0
mov rsi, rax
jmp 0x14001bc93
mov r9d, ebx
mov r8, rsi
mov edx, r14d
mov rcx, r15
call fcn.14001f490
add eax, 1
jne 0x14001bbcb
jmp 0x14001bfb0
sar eax, 2
mov qword [rsp + 0x38], rdx
lea ecx, [rax + 1]
mov r14d, eax
movsxd rcx, ecx
call fcn.140011790
mov rdi, rax
movsxd rax, r14d
mov byte [rdi + rax], 0
cmp r15d, 3
jle 0x14001c482
mov rdx, qword [rsp + 0x38]
mov r8d, r15d
mov rcx, rdi
call fcn.14000eb80
mov r14d, eax
test rdi, rdi
je 0x14001c586
xor ecx, ecx
call fcn.140011ce0
xor r9d, r9d
mov dword [rsp + 0xa0], 1
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], r9
test ebx, ebx
jle 0x14001bcef
movzx ecx, byte [rsi]
test r14d, r14d
jle 0x14001c258
mov ebx, ebx
mov r15d, 1
lea r8, [rsp + 0xa0]
jmp 0x14001c3ce
cdq
movzx ecx, byte [rsi + r15]
add r15, 1
idiv r14d
mov ebp, edx
cmp edx, r14d
jge 0x14001c258
movsxd rbp, ebp
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x38], r8
xor cl, byte [rdi + rbp]
mov byte [rsp + 0x150], cl
mov rcx, r8
call fcn.140011f30
cmp r15, rbx
mov r8, qword [rsp + 0x38]
mov eax, r15d
jne 0x14001c3b6
movsxd rbp, dword [rsp + 0xb4]
mov r14, qword [rsp + 0xa8]
lea ecx, [rbp + 1]
lea rbx, [rbp + rbp*2]
movsxd rcx, ecx
call fcn.140011790
mov r8, rbp
mov rdx, r14
mov rsi, rax
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov byte [rsi + rbp], 0
cmp rbx, 3
jle 0x14001bcfc
test bpl, 3
jne 0x14001bcfc
mov rax, rbx
mov ecx, 4
cqo
idiv rcx
add rax, 3
and rax, 0xfffffffffffffffc
mov rcx, rax
call fcn.140011340
mov rbx, rax
cmp ebp, 3
jle 0x14001c544
mov rdx, rsi
mov r8d, ebp
mov rcx, rax
call fcn.14000eb80
movsxd rdx, eax
jmp 0x14001bd08
xor r14d, r14d
jmp 0x14001c356
lea ecx, [rsi + 1]
xor edi, edi
movsxd rcx, ecx
call fcn.140011790
mov r8, rsi
mov rdx, r15
mov rcx, rax
call sub.ucrtbase.dll_memcpy
mov byte [rax + rsi], 0
jmp 0x14001b402
xor eax, eax
lea rdi, [rsp + 0x164]
mov ecx, 0x19
rep stosd dword [rdi], eax
lea rax, str.array.get:_index_out_of_range__i_
mov dword [rsp + 0x160], 0xfe07
mov qword [rsp + 0x150], rax
mov rax, qword [0x140029220]
mov dword [rsp + 0x168], r9d
mov qword [rsp + 0x158], rax
lea rax, str.__a.len_
mov qword [rsp + 0x178], rax
mov rax, qword [0x14002bc08]
mov dword [rsp + 0x188], 0xfe07
mov qword [rsp + 0x180], rax
lea rax, [0x1400282a9]
mov qword [rsp + 0x1a0], rax
mov rax, qword [0x140028ee0]
mov dword [rsp + 0x190], r10d
mov qword [rsp + 0x1a8], rax
jmp 0x14001c0d3
xor edx, edx
jmp 0x14001bd08
movsxd r13, r13d
mov rcx, r13
call fcn.140011a50
mov r8, r13
mov rdx, r14
mov rcx, rax
call sub.ucrtbase.dll_memcpy
movsxd r8, esi
mov rcx, r14
mov rdx, rax
call sub.ucrtbase.dll_memcpy
jmp 0x14001b3fb
mov ecx, r9d
mov ebp, edx
xor eax, eax
xor r10d, r10d
jmp 0x14001ba19
call fcn.140016f90
nop
nop dword [rax]