Function at 0x14001d400
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x1d8
movaps xmmword [rsp + 0x1c0], xmm6
xor eax, eax
movdqa xmm0, xmmword [0x140031100]
movdqu xmm6, xmmword [rdx]
mov r13, qword [rcx]
mov r15, qword [rcx + 8]
mov ecx, 0xc
lea rdx, [rsp + 0xd8]
lea rsi, [rsp + 0xb0]
mov rdi, rdx
rep stosq qword [rdi], rax
mov rax, qword [0x140032020]
mov rcx, rsi
movaps xmmword [rsp + 0xa0], xmm0
lea rdi, [rsp + 0xa0]
mov rdx, rdi
mov qword [rsp + 0xd0], rax
call sym.prettyPrint__nimaliciousZcommon_u27
mov rcx, qword [0x140032120]
mov r12, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xb8]
call dbg.__emutls_get_address
cmp byte [rax], 0
mov rbx, rax
jne 0x14001d4bf
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rsi
mov qword [rsp + 0xb0], r12
mov rcx, rax
mov qword [rsp + 0xb8], rbp
call sym.write__stdZsyncio_u271
test rbp, rbp
je 0x14001d4ce
test byte [rbp + 7], 0x40
je 0x14001d728
cmp byte [rbx], 0
jne 0x14001d740
movdqa xmm1, xmmword [0x1400310b0]
mov rdx, rdi
mov rcx, rsi
movaps xmmword [rsp + 0xa0], xmm1
call sym.prettyPrint__nimaliciousZcommon_u27
cmp byte [rbx], 0
mov r12, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xb8]
jne 0x14001d52d
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rsi
mov qword [rsp + 0xb0], r12
mov rcx, rax
mov qword [rsp + 0xb8], rbp
call sym.write__stdZsyncio_u271
test rbp, rbp
je 0x14001d53c
test byte [rbp + 7], 0x40
je 0x14001d770
cmp byte [rbx], 0
jne 0x14001d740
mov rcx, rsi
movaps xmmword [rsp + 0xb0], xmm6
call sym.printList__nimaliciousZconsent_u23
cmp byte [rbx], 0
jne 0x14001d740
movdqa xmm2, xmmword [0x140030f10]
mov rdx, rdi
mov rcx, rsi
movaps xmmword [rsp + 0xa0], xmm2
call sym.prettyPrint__nimaliciousZcommon_u27
cmp byte [rbx], 0
mov r12, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xb8]
jne 0x14001d5b4
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rsi
mov qword [rsp + 0xb0], r12
mov rcx, rax
mov qword [rsp + 0xb8], rbp
call sym.write__stdZsyncio_u271
test rbp, rbp
je 0x14001d5c3
test byte [rbp + 7], 0x40
je 0x14001d780
cmp byte [rbx], 0
jne 0x14001d740
movdqa xmm3, xmmword [0x140030ec0]
mov rdx, rdi
mov rcx, rsi
movaps xmmword [rsp + 0xa0], xmm3
call sym.prettyPrint__nimaliciousZcommon_u27
cmp byte [rbx], 0
mov r12, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xb8]
jne 0x14001d622
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rsi
mov qword [rsp + 0xb0], r12
mov rcx, rax
mov qword [rsp + 0xb8], rbp
call sym.write__stdZsyncio_u271
test rbp, rbp
je 0x14001d631
test byte [rbp + 7], 0x40
je 0x14001d790
cmp byte [rbx], 0
jne 0x14001d740
mov ecx, 1
mov rbp, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
call rbp
movdqa xmm4, xmmword [0x140030ea0]
mov rdx, rsi
mov rcx, rax
movaps xmmword [rsp + 0xb0], xmm4
call sym.write__stdZsyncio_u271
cmp byte [rbx], 0
jne 0x14001d740
xor ecx, ecx
call rbp
mov rcx, rsi
mov rdx, rax
call sym.readLine__stdZsyncio_u457
cmp byte [rbx], 0
mov rax, qword [rsp + 0xb0]
mov r12, qword [rsp + 0xb8]
jne 0x14001dd20
cmp rax, 0xf
jne 0x14001d6af
movabs rax, 0x632049202c736559
cmp qword [r12 + 8], rax
je 0x14001d7a0
movdqa xmm5, xmmword [0x140030e50]
mov rdx, rdi
mov rcx, rsi
movaps xmmword [rsp + 0xa0], xmm5
call sym.prettyPrint__nimaliciousZcommon_u27
cmp byte [rbx], 0
mov r13, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
jne 0x14001d701
mov ecx, 1
call rbp
mov rdx, rsi
mov qword [rsp + 0xb0], r13
mov rcx, rax
mov qword [rsp + 0xb8], rdi
call sym.write__stdZsyncio_u271
test rdi, rdi
je 0x14001d710
test byte [rdi + 7], 0x40
je 0x14001dd10
cmp byte [rbx], 0
jne 0x14001dd20
mov ecx, 1
call sym.exit
nop dword [rax + rax]
mov rcx, rbp
call sym.deallocShared
cmp byte [rbx], 0
je 0x14001d4d7
nop dword [rax]
lea rcx, [rsp + 0xd0]
call sym.eqdestroy___pureZtimes_u1702
nop
movaps xmm6, xmmword [rsp + 0x1c0]
add rsp, 0x1d8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbp
call sym.deallocShared
jmp 0x14001d53c
mov rcx, rbp
call sym.deallocShared
jmp 0x14001d5c3
mov rcx, rbp
call sym.deallocShared
jmp 0x14001d631
movabs rax, 0x2e746e65736e6f63
cmp qword [r12 + 0xf], rax
jne 0x14001d6af
movdqa xmm5, xmmword [0x140030e00]
mov rdx, rdi
mov rcx, rsi
movaps xmmword [rsp + 0xa0], xmm5
call sym.prettyPrint__nimaliciousZcommon_u27
mov rax, qword [rsp + 0xb0]
cmp byte [rbx], 0
mov r14, qword [rsp + 0xb8]
mov qword [rsp + 0x28], rax
jne 0x14001d811
mov ecx, 1
call rbp
mov rdx, rsi
mov qword [rsp + 0xb8], r14
mov rcx, rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0xb0], rax
call sym.write__stdZsyncio_u271
test r14, r14
je 0x14001d821
test byte [r14 + 7], 0x40
je 0x14001de08
cmp byte [rbx], 0
jne 0x14001dd20
mov rcx, rsi
call sym.nosgetHomeDir
cmp byte [rbx], 0
mov rax, qword [rsp + 0xb0]
mov r14, qword [rsp + 0xb8]
jne 0x14001ddcd
mov qword [rsp + 0x140], rax
lea rax, [rsp + 0xd0]
mov rcx, rax
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], r13
mov qword [rsp + 0x158], r15
mov qword [rsp + 0x40], rax
call sym.now__pureZtimes_u2101
cmp byte [rbx], 0
jne 0x14001de79
mov rdx, qword [rsp + 0x40]
mov rcx, rsi
call sym.ntgetDateStr
mov rdx, qword [rsp + 0xb8]
cmp byte [rbx], 0
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x28], rdx
jne 0x14001dfc0
mov rcx, rsi
mov qword [rsp + 0x160], rax
mov qword [rsp + 0x168], rdx
call sym.getTime__pureZtimes_u1276
cmp byte [rbx], 0
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
jne 0x14001dfc0
mov qword [rsp + 0xa8], rdx
mov rcx, rsi
mov rdx, rdi
mov qword [rsp + 0xa0], rax
call sym.dollar___pureZtimes_u4797
mov rdx, qword [rsp + 0xb8]
cmp byte [rbx], 0
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x38], rdx
jne 0x14001dfff
movdqa xmm5, xmmword [0x140031100]
mov qword [rsp + 0x178], rdx
mov rcx, rsi
mov rdx, rdi
mov qword [rsp + 0x170], rax
movaps xmmword [rsp + 0xa0], xmm5
call sym.prettyPrint__nimaliciousZcommon_u27
cmp byte [rbx], 0
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xb8]
jne 0x14001e00d
mov qword [rsp + 0x180], rdx
mov rcx, rsi
mov rdx, rdi
mov qword [rsp + 0x188], rax
mov qword [rsp + 0x30], rax
movaps xmmword [rsp + 0xa0], xmm6
call sym.prettyList__nimaliciousZcommon_u2
cmp byte [rbx], 0
mov rdx, qword [rsp + 0xb0]
mov r10, qword [rsp + 0xb8]
mov rax, qword [rsp + 0x30]
jne 0x14001e01b
movdqa xmm5, xmmword [0x140030f10]
mov qword [rsp + 0x190], rdx
mov rcx, rsi
mov rdx, rdi
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x198], r10
mov qword [rsp + 0x30], r10
movaps xmmword [rsp + 0xa0], xmm5
call sym.prettyPrint__nimaliciousZcommon_u27
cmp byte [rbx], 0
mov rdx, qword [rsp + 0xb0]
mov r11, qword [rsp + 0xb8]
mov r10, qword [rsp + 0x30]
mov rax, qword [rsp + 0x48]
jne 0x14001e029
movdqa xmm5, xmmword [0x140030bb0]
mov qword [rsp + 0x58], rax
mov r9d, 8
mov rcx, rsi
lea rax, [0x140030e80]
mov qword [rsp + 0x1a0], rdx
mov rdx, rdi
lea r8, [rsp + 0x140]
mov qword [rsp + 0x60], r10
mov qword [rsp + 0x1a8], r11
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x1b8], rax
mov qword [rsp + 0x1b0], 0xf
movaps xmmword [rsp + 0xa0], xmm5
call sym.nsuFormatOpenArray
cmp byte [rbx], 0
lea rdx, [0x1400309c8]
mov rax, qword [rsp + 0xb0]
mov r11, qword [rsp + 0x50]
mov r10, qword [rsp + 0x60]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x58]
jne 0x14001dc85
mov qword [rsp + 0x88], rbp
mov rbp, rdx
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r10
mov qword [rsp + 0x80], r11
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x50], rdi
movdqu xmm5, xmmword [rbp]
mov rcx, rsi
movaps xmmword [rsp + 0xb0], xmm5
call sym.nosdirExists
cmp byte [rbx], 0
jne 0x14001dc69
test al, al
jne 0x14001db0d
movdqu xmm5, xmmword [rbp]
mov rcx, rsi
movaps xmmword [rsp + 0xb0], xmm5
call sym.noscreateDir
cmp byte [rbx], 0
jne 0x14001dc69
mov rdi, qword [rbp]
mov rcx, rsi
lea rdx, [rdi + r13 + 0x12]
call sym.rawNewString
test rdi, rdi
mov r15, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xb0]
jle 0x14001de15
mov rax, qword [rbp + 8]
lea r12, [r14 + r15 + 8]
mov r8, rdi
add r8, 1
jo 0x14001de6f
test r8, r8
js 0x14001de4f
lea rdx, [rax + 8]
mov rcx, r12
call sym.memcpy
add rdi, r14
jo 0x14001de6f
lea r12, [rdi + r15 + 8]
mov r14, rdi
mov rdi, r14
mov ecx, 0x2f
add rdi, 1
mov word [r12], cx
jo 0x14001dff2
lea r12, [r14 + r15 + 9]
test r13, r13
jle 0x14001de3a
mov r8, r13
add r8, 1
jo 0x14001dfce
test r8, r8
js 0x14001de1f
mov rax, qword [rsp + 0x58]
mov rcx, r12
lea rdx, [rax + 8]
call sym.memcpy
mov rax, r13
add rax, rdi
jo 0x14001dfce
lea r12, [rax + r15 + 8]
movabs rdi, 0x746e65736e6f635f
mov edx, 0x74
mov word [r12 + 0x10], dx
mov rdx, rax
mov qword [r12], rdi
add rdx, 0x11
movabs rdi, 0x78742e6d726f665f
mov qword [r12 + 8], rdi
jo 0x14001dfd8
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xb0], rdx
mov rcx, rsi
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0xb8], r15
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xa8], rax
call sym.writeFile__stdZsyncio_u663
test r15, r15
je 0x14001dc4c
test byte [r15 + 7], 0x40
je 0x14001de42
cmp byte [rbx], 0
jne 0x14001de9a
lea rax, [0x140030a28]
add rbp, 0x10
cmp rax, rbp
jne 0x14001dacd
mov r12, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
mov rax, qword [rsp + 0x70]
mov r10, qword [rsp + 0x78]
mov r11, qword [rsp + 0x80]
test r11, r11
je 0x14001dc95
test byte [r11 + 7], 0x40
je 0x14001dd58
test r10, r10
je 0x14001dca5
test byte [r10 + 7], 0x40
je 0x14001dd80
test rax, rax
je 0x14001dcb4
test byte [rax + 7], 0x40
je 0x14001dda0
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x14001dcc8
test byte [rax + 7], 0x40
je 0x14001ddb0
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x14001dcdc
test byte [rax + 7], 0x40
je 0x14001ddc0
mov rcx, qword [rsp + 0x40]
call sym.eqdestroy___pureZtimes_u1702
test r14, r14
je 0x14001dcf6
test byte [r14 + 7], 0x40
je 0x14001ddf8
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x14001dd30
test byte [rax + 7], 0x40
jne 0x14001dd30
mov rcx, rax
call sym.deallocShared
jmp 0x14001dd30
mov rcx, rdi
call sym.deallocShared
jmp 0x14001d710
lea rcx, [rsp + 0xd0]
call sym.eqdestroy___pureZtimes_u1702
nop dword [rax]
test r12, r12
je 0x14001d74e
test byte [r12 + 7], 0x40
jne 0x14001d74e
mov rcx, r12
call sym.deallocShared
jmp 0x14001d74e
mov rcx, r11
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x48], rax
call sym.deallocShared
mov rax, qword [rsp + 0x48]
mov r10, qword [rsp + 0x50]
jmp 0x14001dc95
mov rcx, r10
mov qword [rsp + 0x48], rax
call sym.deallocShared
mov rax, qword [rsp + 0x48]
jmp 0x14001dca5
mov rcx, rax
call sym.deallocShared
jmp 0x14001dcb4
mov rcx, rax
call sym.deallocShared
jmp 0x14001dcc8
mov rcx, rax
call sym.deallocShared
jmp 0x14001dcdc
lea rcx, [rsp + 0xd0]
call sym.eqdestroy___pureZtimes_u1702
test r14, r14
je 0x14001dd30
test byte [r14 + 7], 0x40
jne 0x14001dd30
xor eax, eax
mov qword [rsp + 0x30], rax
nop dword [rax]
mov rcx, r14
call sym.deallocShared
jmp 0x14001dcf6
mov rcx, r14
call sym.deallocShared
jmp 0x14001d821
lea r12, [r14 + r15 + 8]
jmp 0x14001db73
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call sym.raiseRangeErrorI
mov rax, rdi
jmp 0x14001dbd0
mov rcx, r15
call sym.deallocShared
jmp 0x14001dc4c
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call sym.raiseRangeErrorI
jmp 0x14001db73
call sym.raiseOverflow
jmp 0x14001db73
mov rcx, qword [rsp + 0x40]
call sym.eqdestroy___pureZtimes_u1702
test r14, r14
je 0x14001dd30
mov qword [rsp + 0x30], 0
jmp 0x14001dceb
mov rcx, qword [0x140032110]
call dbg.__emutls_get_address
mov rdx, qword [rax]
mov rdi, rax
mov rax, qword [rdx]
cmp word [rax + 0x12], 1
jle 0x14001dc69
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0x64241d00
jne 0x14001dc69
lea rcx, [rsp + 0xc8]
xor r8d, r8d
mov byte [rbx], 0
mov qword [rsp + 0xc8], 0
call sym.eqcopy___stdZtypedthreads_u187
mov rdx, qword [rsp + 0x50]
mov rcx, rsi
movdqa xmm5, xmmword [0x140030950]
mov r15, qword [rsp + 0xc8]
movaps xmmword [rsp + 0xa0], xmm5
call sym.prettyPrint__nimaliciousZcommon_u27
mov rdx, qword [rsp + 0xb0]
cmp byte [rbx], 0
mov r8, qword [rsp + 0xb8]
mov qword [rsp + 0x98], rdx
jne 0x14001df76
mov qword [rsp + 0x90], r8
mov ecx, 1
mov rax, qword [rsp + 0x88]
call rax
mov rdx, qword [rsp + 0x98]
mov r8, qword [rsp + 0x90]
mov rcx, rax
mov qword [rsp + 0xb0], rdx
mov rdx, rsi
mov qword [rsp + 0xb8], r8
call sym.write__stdZsyncio_u271
mov r8, qword [rsp + 0x90]
test r8, r8
je 0x14001df86
test byte [r8 + 7], 0x40
je 0x14001e037
cmp byte [rbx], 0
je 0x14001d719
mov rcx, r15
call sym.eqdestroy___nimaliciousZconsent_u72
cmp byte [rbx], 0
jne 0x14001dc69
mov rax, qword [rdi]
xor r8d, r8d
mov rcx, rdi
mov rdx, qword [rax + 0x38]
call sym.eqcopy___stdZtypedthreads_u187
cmp byte [rbx], 0
jne 0x14001dc69
jmp 0x14001dc55
mov qword [rsp + 0x30], 0
jmp 0x14001dcc8
call sym.raiseOverflow
jmp 0x14001de3a
mov qword [rsp + 0x90], rax
call sym.raiseOverflow
mov rdx, qword [rsp + 0x90]
jmp 0x14001dc05
call sym.raiseOverflow
mov rdi, r14
jmp 0x14001db8f
mov qword [rsp + 0x30], 0
jmp 0x14001dcb4
mov qword [rsp + 0x30], 0
jmp 0x14001dca5
mov qword [rsp + 0x30], 0
jmp 0x14001dc95
mov qword [rsp + 0x30], 0
jmp 0x14001dc85
mov rcx, r8
call sym.deallocShared
jmp 0x14001df86