Function at 0x45e050
Capabilities:
Create process on windows
Encode data using base64
Get common file path
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x6c8
movaps xmmword [rsp + 0x6b0], xmm6
mov byte [rsp + 0xcf], r9b
mov qword [rsp + 0x118], rcx
mov qword [rsp + 0x260], r8
mov al, byte [rdx + 0x48]
test al, al
sete cl
mov qword [rsp + 0x178], rdx
mov rbp, qword [rdx + 0x40]
test rbp, rbp
sete dl
and dl, cl
je 0x45e0b4
mov qword [rsp + 0x210], 0
xor eax, eax
jmp 0x45e999
mov byte [rsp + 0x70], dl
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xd8], xmm0
test al, al
jne 0x45e259
mov qword [rsp + 0x78], rbp
call sub.KERNEL32.dll_GetEnvironmentStringsW
test rax, rax
je 0x4617f4
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], rax
lea rdi, [rsp + 0x1b8]
lea r12, [rsp + 0x2b8]
lea r14, [rsp + 0x1a0]
lea r13, [rsp + 0x180]
lea rbx, [rsp + 0x120]
lea rbp, [rsp + 0x80]
lea r15, [rsp + 0xd0]
lea rsi, [rsp + 0x2a0]
mov rcx, r14
mov rdx, r13
call fcn.0045a720
cmp qword [rsp + 0x1a0], 0
je 0x45e247
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [rdi]
movaps xmmword [rsp + 0x50], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x100], rax
movdqu xmm0, xmmword [rsp + 0x1a0]
movdqa xmmword [rsp + 0xf0], xmm0
mov rcx, qword [rsp + 0xf0]
add rax, rcx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rax
mov word [rsp + 0x90], 0
mov rcx, rbx
mov rdx, rbp
call fcn.00428f00
movups xmm0, xmmword [rsp + 0x1a0]
movaps xmmword [rsp + 0x2a0], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x2b0], rax
mov rax, qword [rsp + 0x130]
mov qword [r12 + 0x10], rax
movups xmm0, xmmword [rsp + 0x120]
movups xmmword [r12], xmm0
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x90], rax
movdqu xmm0, xmmword [rdi]
movdqa xmmword [rsp + 0x80], xmm0
mov rcx, rbx
mov rdx, r15
mov r8, rsi
mov r9, rbp
call fcn.0041e780
mov rcx, qword [rsp + 0x120]
test rcx, rcx
je 0x45e130
mov rdx, qword [rsp + 0x128]
test rdx, rdx
jle 0x45e130
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
jmp 0x45e130
mov rcx, qword [rsp + 0x180]
call sub.KERNEL32.dll_FreeEnvironmentStringsW
mov rbp, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x178]
mov rax, qword [rcx + 0x30]
mov rcx, qword [rcx + 0x38]
xor edx, edx
test rcx, rcx
sete dl
cmove rbp, rcx
add rdx, rdx
mov qword [rsp + 0x120], rdx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x140], rdx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x160], rbp
lea r14, [rsp + 0x120]
lea r12, [rsp + 0x1a0]
mov rcx, r14
call fcn.004155c0
mov rsi, rax
test rax, rax
je 0x45e962
mov r13, rdx
cmp qword [rdx], 0
je 0x45e320
mov r15, qword [rsi]
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x45e540
js 0x461779
mov rdi, rbx
not rdi
shr rdi, 0x3f
mov rcx, rbx
mov rdx, rdi
call fcn.0040a2c0
mov rbp, rax
test rax, rax
jne 0x45e545
jmp 0x461759
mov r13, qword [rsp + 0xd8]
test r13, r13
je 0x45e2c0
mov r9, qword [rsi + 0x18]
mov rax, qword [rsi + 0x28]
mov r15, qword [rsp + 0xd0]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xf0]
mov rdx, r15
mov r8, r13
call fcn.004231d0
cmp qword [rsp + 0xf0], 0
jne 0x45e2c0
mov rdx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x108]
mov byte [rsp + 0x50], 0
test rdx, rdx
je 0x45e6f1
mov rcx, qword [rax + rcx*8 + 0x328]
mov rax, rdx
add rax, 0xffffffffffffffff
je 0x45e45e
add rdx, 0xfffffffffffffffe
mov rbp, rax
and rbp, 7
je 0x45e3cb
xor ebx, ebx
nop
movzx edi, word [rcx + 0x322]
mov rcx, qword [rcx + rdi*8 + 0x328]
add rbx, 1
cmp rbp, rbx
jne 0x45e3b0
sub rax, rbx
cmp rdx, 7
jb 0x45e45e
nop word cs:[rax + rax]
nop
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
movzx edx, word [rcx + 0x322]
mov rcx, qword [rcx + rdx*8 + 0x328]
add rax, 0xfffffffffffffff8
jne 0x45e3e0
movzx eax, word [rcx + 0x322]
add rax, 0xffffffffffffffff
mov qword [rsp + 0x1a0], 0
mov qword [rsp + 0x1a8], rcx
mov qword [rsp + 0x1b0], rax
lea rcx, [rsp + 0x2a0]
mov rdx, r12
lea r8, [rsp + 0x50]
call fcn.00422b00
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0xc0], rax
movdqu xmm0, xmmword [rsp + 0x2a0]
movups xmm1, xmmword [rsp + 0x2b0]
movups xmm2, xmmword [rsp + 0x2c0]
movups xmm3, xmmword [rsp + 0x2d0]
movaps xmmword [rsp + 0xb0], xmm3
movaps xmmword [rsp + 0xa0], xmm2
movaps xmmword [rsp + 0x90], xmm1
movdqa xmmword [rsp + 0x80], xmm0
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0x2f8]
movzx edx, word [rax + 0x322]
cmp rcx, rdx
jb 0x45e729
nop dword [rax]
mov rdx, qword [rax]
test rdx, rdx
je 0x45e727
movzx ecx, word [rax + 0x320]
mov rax, rdx
cmp cx, word [rdx + 0x322]
jae 0x45e510
jmp 0x45e729
mov ebp, 1
mov rcx, rbp
mov rdx, r15
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x1a0], rbp
mov qword [rsp + 0x1a8], rbx
mov qword [rsp + 0x1b0], rbx
mov r15, qword [rsi + 0x18]
mov rbp, qword [rsi + 0x28]
test rbp, rbp
je 0x45e5d0
mov rsi, rbp
add rsi, rbp
setb cl
movabs rax, 0x8000000000000001
add rax, 0xfffffffffffffffd
cmp rsi, rax
seta al
or al, cl
cmp al, 1
je 0x46174f
xor al, 1
movzx edi, al
add rdi, rdi
test rsi, rsi
je 0x45e5d7
mov rcx, rsi
mov rdx, rdi
call fcn.0040a2c0
mov rbx, rax
test rbx, rbx
jne 0x45e5e3
jmp 0x46178d
mov ebx, 2
jmp 0x45e5e3
mov rbx, rdi
test rbx, rbx
je 0x46178d
mov r8, rbp
add r8, rbp
mov rcx, rbx
mov rdx, r15
call sub.msvcrt.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x1a0]
movdqa xmmword [rsp + 0x2a0], xmm0
mov rax, qword [rsp + 0x1b0]
mov qword [rsp + 0x2b0], rax
mov qword [rsp + 0x2b8], rbx
mov qword [rsp + 0x2c0], rbp
mov qword [rsp + 0x2c8], rbp
mov rdi, qword [r13]
mov rsi, qword [r13 + 0x10]
test rsi, rsi
je 0x45e670
js 0x461783
mov rbx, rsi
not rbx
shr rbx, 0x3f
mov rcx, rsi
mov rdx, rbx
call fcn.0040a2c0
mov rbp, rax
test rax, rax
jne 0x45e675
jmp 0x461769
mov ebp, 1
mov rcx, rbp
mov rdx, rdi
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x1a0], rbp
mov qword [rsp + 0x1a8], rsi
mov qword [rsp + 0x1b0], rsi
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0x2a0]
mov r9, r12
call fcn.0041e780
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x45e2c0
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jle 0x45e2c0
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
jmp 0x45e2c0
mov qword [rsp + 0x1a0], 0
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1b0], rcx
lea rcx, [rsp + 0x2a0]
mov rdx, r12
lea r8, [rsp + 0x50]
call fcn.00422b00
jmp 0x45e814
xor eax, eax
lea rcx, [rcx + rcx*2]
mov rdx, rcx
shl rdx, 4
movups xmm0, xmmword [rax + rdx + 8]
movups xmm1, xmmword [rax + rdx + 0x18]
movups xmm2, xmmword [rax + rdx + 0x28]
movaps xmmword [rsp + 0x1c0], xmm2
movaps xmmword [rsp + 0x1b0], xmm1
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmm0, xmmword [rsp + 0x80]
movaps xmm1, xmmword [rsp + 0x90]
movaps xmm2, xmmword [rsp + 0xa0]
movups xmmword [rax + rdx + 0x28], xmm2
movups xmmword [rax + rdx + 0x18], xmm1
movups xmmword [rax + rdx + 8], xmm0
mov rdx, qword [rax + rcx*8 + 0x228]
lea rbp, [rsp + 0x1d0]
mov qword [rbp + 0x10], rdx
movups xmm0, xmmword [rax + rcx*8 + 0x218]
movups xmmword [rbp], xmm0
lea rbp, [rsp + 0xb0]
mov rdx, qword [rbp + 0x10]
mov qword [rax + rcx*8 + 0x228], rdx
movups xmm0, xmmword [rbp]
movups xmmword [rax + rcx*8 + 0x218], xmm0
movdqa xmm0, xmmword [rsp + 0x1a0]
movaps xmm1, xmmword [rsp + 0x1b0]
movaps xmm2, xmmword [rsp + 0x1c0]
movaps xmm3, xmmword [rsp + 0x1d0]
movaps xmmword [rsp + 0x2b0], xmm1
movaps xmmword [rsp + 0x2c0], xmm2
movaps xmmword [rsp + 0x2d0], xmm3
mov rax, qword [rsp + 0x1e0]
mov qword [rsp + 0x2e0], rax
movdqa xmmword [rsp + 0x2a0], xmm0
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0x1e0], rax
movdqa xmm0, xmmword [rsp + 0x2a0]
movaps xmm1, xmmword [rsp + 0x2b0]
movaps xmm2, xmmword [rsp + 0x2c0]
movaps xmm3, xmmword [rsp + 0x2d0]
movaps xmmword [rsp + 0x1d0], xmm3
movaps xmmword [rsp + 0x1c0], xmm2
add qword [rsp + 0xe0], 0xffffffffffffffff
movaps xmmword [rsp + 0x1b0], xmm1
movdqa xmmword [rsp + 0x1a0], xmm0
cmp byte [rsp + 0x50], 0
je 0x45e8b4
test r15, r15
je 0x46179d
mov rax, qword [r13 + 0x328]
mov qword [rsp + 0xd8], rax
add r15, 0xffffffffffffffff
mov qword [rsp + 0xd0], r15
mov qword [rax], 0
mov edx, 0x388
mov r8d, 8
mov rcx, r13
call fcn.0040a2d0
mov rcx, qword [rsp + 0x1a0]
test rcx, rcx
je 0x45e2c0
mov rdx, qword [rsp + 0x1a8]
mov rbp, qword [rsp + 0x1b8]
mov rbx, qword [rsp + 0x1c0]
mov rsi, qword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1d8]
test rdx, rdx
jle 0x45e901
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
test rbx, rbx
je 0x45e936
lea rax, [rbx + rbx]
add rbx, rbx
jb 0x45e936
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45e936
mov r8d, 2
mov rcx, rbp
mov rdx, rbx
call fcn.0040a2d0
test rsi, rsi
je 0x45e2c0
test rdi, rdi
jle 0x45e2c0
mov r8, rdi
not r8
shr r8, 0x3f
mov rcx, rsi
mov rdx, rdi
call fcn.0040a2d0
jmp 0x45e2c0
movdqu xmm0, xmmword [rsp + 0xd0]
movdqu xmmword [rsp + 0x218], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x210], 1
mov eax, 1
mov dl, byte [rsp + 0x70]
mov qword [rsp + 0x1e8], 0
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x1d4], xmm0
movdqu xmmword [rsp + 0x1a8], xmm0
movdqu xmmword [rsp + 0x1b8], xmm0
movdqu xmmword [rsp + 0x1c8], xmm0
pcmpeqd xmm0, xmm0
movdqu xmmword [rsp + 0x1f0], xmm0
mov qword [rsp + 0x200], 0xffffffffffffffff
mov dword [rsp + 0x1a0], 0x68
mov dword [rsp + 0x1dc], 0x100
test dl, dl
mov qword [rsp + 0x70], rax
je 0x45ea0d
xor r15d, r15d
jmp 0x45eb38
lea rdx, str.PATHlock_count_overflow_in_reentrant_mutexlibrary_std_src_sys_common_remutex.rs
lea rcx, [rsp + 0x80]
mov r8d, 4
call fcn.0045d5f0
mov r12, qword [rsp + 0x98]
mov rbp, qword [rsp + 0x220]
test rbp, rbp
je 0x45ef5f
mov rdi, qword [rsp + 0xa8]
mov r15, qword [rsp + 0x218]
movzx r14d, word [rbp + 0x322]
mov r13, r14
neg r13
mov esi, 0x210
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
lea rax, [rbx + r13]
cmp rax, 0xffffffffffffffff
je 0x45eab0
mov r8, qword [rbp + rsi*2 - 0x400]
mov r9d, dword [rbp + rsi*2 - 0x3f0]
mov dword [rsp + 0x20], 1
mov rcx, r12
mov edx, edi
call sub.KERNEL32.dll_CompareStringOrdinal
add rsi, 0x18
add rbx, 1
cmp eax, 3
je 0x45ea70
cmp eax, 1
jne 0x45eac7
jmp 0x45eab3
mov rbx, r14
sub r15, 1
jb 0x45fac9
mov rbp, qword [rbp + rbx*8 + 0x328]
jmp 0x45ea50
cmp eax, 2
jne 0x4616bf
mov r15, qword [rbp + rsi - 0x10]
mov r14, qword [rbp + rsi]
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jle 0x45eafe
mov rcx, qword [rsp + 0x80]
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x45eb38
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45eb38
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45eb38
mov r8d, 2
mov rcx, r12
call fcn.0040a2d0
mov rax, qword [rsp + 0x178]
mov r12, qword [rax]
mov r13, qword [rax + 0x10]
test r13, r13
je 0x45eb84
cmp r13, 4
jae 0x45eb5b
lea rdx, [0x0045b890]
jmp 0x45eb75
cmp dword [r12], 0x5c3f5c5c
lea rax, [0x0045b8a0]
lea rdx, [0x0045b890]
cmove rdx, rax
mov cl, byte [r13 + r12 - 1]
call rdx
test al, al
je 0x45ee45
lea rax, [0x0090be60]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x120], 1
cmp qword [rsp + 0x120], 0
mov r14, qword [rsp + 0x128]
je 0x45ec27
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], r14
mov qword [rax], 1
mov rdi, qword [rsp + 0x70]
test rdi, rdi
je 0x45ef2c
mov rcx, qword [rsp + 0x220]
test rcx, rcx
je 0x45eefc
mov rdx, qword [rsp + 0x218]
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x2a0], 0
mov qword [rsp + 0x2a8], rdx
mov qword [rsp + 0x2b0], rcx
mov qword [rsp + 0x2c8], rdx
mov qword [rsp + 0x2d0], rcx
xor ecx, ecx
jmp 0x45ef0f
movdqu xmm0, xmmword [rsp + 0x130]
movdqu xmmword [rsp + 0x250], xmm0
mov qword [rsp + 0x248], r14
mov rcx, qword [rsp + 0x258]
mov rdx, rcx
sub rdx, 5
jae 0x45ef78
mov rax, qword [rsp + 0x178]
mov rdi, qword [rax + 0x18]
mov rbx, qword [rax + 0x28]
mov r15b, byte [rax + 0x9d]
mov qword [rsp + 0x80], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x88], xmm0
lea rcx, [rsp + 0x80]
xor edx, edx
call fcn.00423f40
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x90]
mov word [rax + rcx*2], 0x22
add rcx, 1
mov qword [rsp + 0x90], rcx
add r13, r12
mov qword [rsp + 0x2a0], r12
mov qword [rsp + 0x2a8], r13
mov word [rsp + 0x2b0], 0
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0x2a0]
call fcn.00428da0
mov rdx, qword [rsp + 0x90]
cmp rdx, qword [rsp + 0x88]
jne 0x45ed10
lea rcx, [rsp + 0x80]
call fcn.00423f40
mov rdx, qword [rsp + 0x90]
lea r12, [rsp + 0x88]
mov rax, qword [rsp + 0x80]
mov word [rax + rdx*2], 0x22
add rdx, 1
mov qword [rsp + 0x90], rdx
shl rbx, 5
lea rsi, [rsp + 0x80]
nop
test rbx, rbx
je 0x45f06a
mov rdx, qword [rsp + 0x90]
cmp rdx, qword [rsp + 0x88]
jne 0x45ed6b
mov rcx, rsi
call fcn.00423f40
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x80]
mov word [rax + rdx*2], 0x20
add rdx, 1
mov qword [rsp + 0x90], rdx
mov rcx, rsi
mov rdx, rdi
mov r8d, r15d
call fcn.004559e0
mov rbp, rax
add rdi, 0x20
add rbx, 0xffffffffffffffe0
test rax, rax
je 0x45ed40
mov rdx, qword [rsp + 0x88]
test rdx, rdx
je 0x45ede2
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45ede2
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45ede2
mov rcx, qword [rsp + 0x80]
mov r8d, 2
call fcn.0040a2d0
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], rbp
mov qword [rax], 1
mov rdi, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x250]
test rdx, rdx
je 0x45ebca
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45ebca
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45ebca
mov r8d, 2
mov rcx, r14
call fcn.0040a2d0
jmp 0x45ebca
cmp r13, 3
jbe 0x45eeae
mov al, byte [r13 + r12 - 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x2e
jne 0x45eeae
mov al, byte [r12 + r13 - 3]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
jne 0x45eeae
mov al, byte [r12 + r13 - 2]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x78
jne 0x45eeae
mov al, byte [r12 + r13 - 1]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
sete cl
jmp 0x45eeb0
xor ecx, ecx
lea rax, [r12 + r13]
xor edx, edx
nop word cs:[rax + rax]
cmp r13, rdx
je 0x45f26c
movzx ebx, byte [r12 + rdx]
cmp bl, 0x2f
je 0x45eedc
add rdx, 1
cmp bl, 0x5c
jne 0x45eec0
test cl, cl
je 0x45f32b
lea rcx, [rsp + 0x120]
mov rdx, r12
mov r8, r13
call fcn.0045beb0
jmp 0x45eb9f
mov qword [rsp + 0x2a0], 2
mov ecx, 2
xor eax, eax
mov qword [rsp + 0x2c0], rcx
mov qword [rsp + 0x2e0], rax
lea rcx, [rsp + 0x2a0]
call fcn.004188b0
cmp dword [rsp + 0x260], 3
jb 0x45ef43
mov rcx, qword [rsp + 0x268]
call sub.KERNEL32.dll_CloseHandle
movaps xmm6, xmmword [rsp + 0x6b0]
add rsp, 0x6c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r15d, r15d
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jg 0x45eae7
jmp 0x45eafe
xor eax, eax
sub rcx, rdx
lea rdx, [r14 + rdx*2]
cmovae rax, rdx
cmp rcx, 5
sete cl
test rax, rax
je case.0x45efd5.2
test cl, cl
je case.0x45efd5.2
cmp word [rax], 0x2e
jne case.0x45efd5.2
cmp word [rax + 8], 0
jne case.0x45efd5.2
movzx ecx, word [rax + 2]
lea edx, [rcx - 0x42]
cmp dx, 0x21
ja case.0x45efd5.2
movzx edx, dx
lea rbp, [0x00461d64]
movsxd rdx, dword [rbp + rdx*4]
add rdx, rbp
jmp rdx
movzx edx, word [rax + 4]
or edx, 0x20
cmp dx, 0x61
jne 0x45eff1
movzx edx, word [rax + 6]
or edx, 0x20
cmp dx, 0x74
je 0x45f01d
cmp cx, 0x43
jne case.0x45efd5.2
movzx ecx, word [rax + 4]
or ecx, 0x20
cmp cx, 0x6d
jne case.0x45efd5.2
movzx eax, word [rax + 6]
or eax, 0x20
cmp ax, 0x64
jne case.0x45efd5.2
xor ebx, ebx
lea rcx, [rsp + 0x2a0]
mov r8d, 0x400
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x80], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x88], xmm0
mov edi, 0x200
mov r13d, 2
cmp rdi, 0x201
jb 0x45f1c3
jmp 0x45f1d6
mov rsi, qword [rsp + 0x80]
movups xmm0, xmmword [r12]
movaps xmmword [rsp + 0x230], xmm0
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0xe0], rax
movdqu xmm0, xmmword [rsp + 0x248]
movdqa xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x280], rax
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmmword [rsp + 0x270], xmm0
mov qword [rsp + 0x180], rsi
movdqa xmm0, xmmword [rsp + 0x230]
movdqu xmmword [rsp + 0x188], xmm0
mov rdx, qword [rsp + 0x190]
cmp rdx, qword [rsp + 0x188]
jne 0x45f10d
mov dil, 1
lea rcx, [rsp + 0x180]
call fcn.00423f40
mov rsi, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x190]
mov word [rsi + rdx*2], 0
add rdx, 1
mov qword [rsp + 0x190], rdx
mov rcx, qword [rsp + 0x178]
cmp byte [rcx + 0x9c], 0
mov eax, 0x400
mov r12d, 0x608
cmove r12d, eax
or r12d, dword [rcx + 0x98]
cmp qword [rsp + 0x210], 1
jne 0x45f44d
mov rsi, qword [rsp + 0x218]
mov rbx, qword [rsp + 0x220]
mov rdi, qword [rsp + 0x228]
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], rdi
mov qword [rsp + 0x50], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
test rdi, rdi
je 0x45f5f3
mov eax, 2
mov qword [rsp + 0x78], rax
xor r13d, r13d
jmp 0x45f621
mov rdi, rsi
jae 0x460938
cmp rdi, 0x201
jae 0x45f1d6
mov r15d, 0x200
lea rsi, [rsp + 0x2a0]
mov rbp, rsi
jmp 0x45f218
mov r8, rdi
sub r8, rbx
mov rax, qword [rsp + 0x88]
sub rax, rbx
cmp rax, r8
jae 0x45f204
lea rcx, [rsp + 0x80]
mov rdx, rbx
call fcn.004242f0
mov r13, qword [rsp + 0x80]
mov qword [rsp + 0x90], rdi
mov rbx, rdi
mov r15, rdi
mov rbp, r13
mov rsi, r13
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov rcx, rsi
mov edx, edi
call sub.KERNEL32.dll_GetSystemDirectoryW
mov r12d, eax
test eax, eax
jne 0x45f23d
call sub.KERNEL32.dll_GetLastError
test eax, eax
jne 0x460971
mov esi, r12d
cmp rdi, rsi
jne 0x45f1b1
call sub.KERNEL32.dll_GetLastError
cmp eax, 0x7a
jne 0x461884
add rdi, rdi
cmp rdi, 0x201
jae 0x45f1d6
jmp 0x45f1c3
xor ebp, ebp
mov rcx, r12
jmp 0x45f28b
xor ebp, ebp
test dx, dx
je 0x45f56e
mov dx, 1
test bp, bp
jne 0x45f280
cmp rcx, rax
je 0x45fa8c
movzx ebx, byte [rcx]
test bl, bl
js 0x45f2b0
add rcx, 1
mov esi, ebx
xor ebp, ebp
mov edx, esi
jmp 0x45f282
mov esi, ebx
and esi, 0x1f
movzx edi, byte [rcx + 1]
and edi, 0x3f
cmp bl, 0xdf
jbe 0x45f2f4
movzx ebp, byte [rcx + 2]
shl edi, 6
and ebp, 0x3f
or ebp, edi
cmp bl, 0xf0
jb 0x45f307
movzx ebx, byte [rcx + 3]
add rcx, 4
and esi, 7
shl esi, 0x12
shl ebp, 6
and ebx, 0x3f
or ebx, ebp
or esi, ebx
cmp esi, 0xffff
jbe 0x45f2aa
jmp 0x45f318
add rcx, 2
shl esi, 6
or esi, edi
cmp esi, 0xffff
ja 0x45f318
jmp 0x45f2aa
add rcx, 3
shl esi, 0xc
or esi, ebp
cmp esi, 0xffff
jbe 0x45f2aa
and esi, 0x3ff
or esi, 0xdc00
mov ebp, esi
jmp 0x45f282
test r13, r13
js 0x4618a1
mov rdi, r13
not rdi
shr rdi, 0x3f
mov rcx, r13
mov rdx, rdi
call fcn.0040a2c0
test rax, rax
je 0x4618a8
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], r13
mov qword [rsp + 0x2b0], 0
lea rcx, [rsp + 0x2a0]
mov rdx, r12
mov r8, r13
call fcn.00450fc0
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x90], rax
movdqu xmm0, xmmword [rsp + 0x2a0]
movdqa xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x2b0], rax
movdqa xmmword [rsp + 0x2a0], xmm0
lea rdx, str..exeprogram_not_found
lea rcx, [rsp + 0x2a0]
mov r8d, 4
call fcn.00450fc0
mov rdi, qword [rsp + 0x2b0]
mov qword [rsp + 0x90], rdi
movdqa xmm0, xmmword [rsp + 0x2a0]
movdqa xmmword [rsp + 0x80], xmm0
mov r14, qword [rsp + 0x80]
lea rcx, [rsp + 0x2a0]
mov rdx, r14
mov r8, rdi
call fcn.00461f20
cmp qword [rsp + 0x2a0], 0
je 0x45f599
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x138], rax
movdqu xmm0, xmmword [rsp + 0x2a0]
movdqu xmmword [rsp + 0x128], xmm0
mov qword [rsp + 0x120], 0
jmp 0x460910
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x230], xmm0
mov r15d, 2
xor r14d, r14d
movdqa xmm0, xmmword [rsp + 0x230]
movdqa xmmword [rsp + 0x6a0], xmm0
mov qword [rsp + 0xf0], r15
movdqu xmmword [rsp + 0xf8], xmm0
mov rcx, qword [rsp + 0x178]
lea rax, [rcx + 0x50]
mov rcx, qword [rcx + 0x50]
test rcx, rcx
cmove rax, rcx
je 0x45f5d3
mov r8, qword [rax]
mov rcx, qword [rax + 0x10]
add rcx, r8
xor edi, edi
mov rdx, r8
jmp 0x45f4cb
xor edi, edi
test bp, bp
je 0x45f57a
mov bp, 1
test di, di
jne 0x45f4c0
cmp rdx, rcx
je 0x45fbb4
movzx esi, byte [rdx]
test sil, sil
js 0x45f4f1
add rdx, 1
mov ebx, esi
xor edi, edi
mov ebp, ebx
jmp 0x45f4c2
mov ebx, esi
and ebx, 0x1f
movzx eax, byte [rdx + 1]
and eax, 0x3f
cmp sil, 0xdf
jbe 0x45f537
movzx edi, byte [rdx + 2]
shl eax, 6
and edi, 0x3f
or edi, eax
cmp sil, 0xf0
jb 0x45f54a
movzx eax, byte [rdx + 3]
add rdx, 4
and ebx, 7
shl ebx, 0x12
shl edi, 6
and eax, 0x3f
or eax, edi
or ebx, eax
cmp ebx, 0xffff
jbe 0x45f4eb
jmp 0x45f55b
add rdx, 2
shl ebx, 6
or ebx, eax
cmp ebx, 0xffff
ja 0x45f55b
jmp 0x45f4eb
add rdx, 3
shl ebx, 0xc
or ebx, edi
cmp ebx, 0xffff
jbe 0x45f4eb
and ebx, 0x3ff
or ebx, 0xdc00
mov edi, ebx
jmp 0x45f4c2
lea rax, str.nul_byte_found_in_provided_data
jmp 0x45eb8b
lea rax, str.nul_byte_found_in_provided_data
mov rcx, qword [rsp + 0x118]
mov qword [rcx + 8], rax
mov qword [rcx], 1
jmp 0x45fdca
mov rcx, r14
mov rdx, rdi
call fcn.0044a260
test rax, rax
je 0x4608fd
cmp rdx, 2
jne 0x45fb64
movzx ecx, word [rax]
cmp ecx, 0x2e2e
jne 0x45fb64
mov r8d, 2
xor ecx, ecx
jmp 0x45fbaf
mov qword [rsp + 0x70], r14
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x120], xmm0
mov r14d, 2
xor r13d, r13d
jmp 0x45fc43
mov r14b, 1
lea rcx, [rsp + 0x50]
xor edx, edx
call fcn.00423f40
mov rax, qword [rsp + 0x50]
mov r13, qword [rsp + 0x60]
mov qword [rsp + 0x78], rax
mov word [rax + r13*2], 0
add r13, 1
mov qword [rsp + 0x60], r13
xor eax, eax
test rbx, rbx
cmove rdi, rbx
sete al
add rax, rax
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], rsi
mov qword [rsp + 0x2b0], rbx
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x2c8], rsi
mov qword [rsp + 0x2d0], rbx
mov qword [rsp + 0x2e0], rdi
lea rsi, [rsp + 0x80]
lea rdx, [rsp + 0x2a0]
mov rcx, rsi
call fcn.0041fb30
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x4605f9
mov rcx, qword [rsp + 0x90]
lea rbx, [rcx + rcx*2]
mov rbp, rbx
shl rbp, 4
mov rcx, qword [rax + rbp + 8]
test rcx, rcx
je 0x4605f9
mov rdx, qword [rax + rbp + 0x10]
mov r8, qword [rax + rbp + 0x18]
mov rdi, qword [rax + rbp + 0x20]
mov qword [rsp + 0x70], rdi
mov r14, qword [rax + rbp + 0x28]
mov r15, qword [rax + rbp + 0x30]
mov rbp, qword [rax + rbx*8 + 0x228]
mov qword [rsp + 0x100], rbp
movdqu xmm0, xmmword [rax + rbx*8 + 0x218]
movdqa xmmword [rsp + 0xf0], xmm0
add r8, rcx
xor edi, edi
mov rsi, rcx
jmp 0x45f70b
xor edi, edi
test bx, bx
je 0x45fa1b
mov bx, 1
test di, di
jne 0x45f700
cmp rsi, r8
je 0x45f7af
movzx ebp, byte [rsi]
test bpl, bpl
js 0x45f731
add rsi, 1
mov eax, ebp
xor edi, edi
mov ebx, eax
jmp 0x45f702
mov eax, ebp
and eax, 0x1f
movzx edi, byte [rsi + 1]
and edi, 0x3f
cmp bpl, 0xdf
jbe 0x45f77b
movzx r9d, byte [rsi + 2]
shl edi, 6
and r9d, 0x3f
or r9d, edi
cmp bpl, 0xf0
jb 0x45f78d
movzx ebp, byte [rsi + 3]
add rsi, 4
and eax, 7
shl eax, 0x12
shl r9d, 6
and ebp, 0x3f
or ebp, r9d
or eax, ebp
cmp eax, 0xffff
jbe 0x45f72b
jmp 0x45f79e
add rsi, 2
shl eax, 6
or eax, edi
cmp eax, 0xffff
ja 0x45f79e
jmp 0x45f72b
add rsi, 3
shl eax, 0xc
or eax, r9d
cmp eax, 0xffff
jbe 0x45f72b
and eax, 0x3ff
or eax, 0xdc00
mov edi, eax
jmp 0x45f702
test rdx, rdx
jle 0x45f7c3
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
mov rcx, qword [rsp + 0x70]
lea rax, [rcx + r15*2]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x58]
sub rax, r13
cmp rax, r15
jae 0x45f815
lea rcx, [rsp + 0x50]
mov rdx, r13
mov r8, r15
call fcn.004242f0
mov rax, qword [rsp + 0x50]
mov r13, qword [rsp + 0x60]
jmp 0x45f81a
mov rax, qword [rsp + 0x78]
lea r8, [r15 + r15]
mov rsi, rax
lea rcx, [rax + r13*2]
mov rdx, qword [rsp + 0x70]
call sub.msvcrt.dll_memcpy
add r13, r15
mov qword [rsp + 0x60], r13
test r14, r14
je 0x45f86e
lea rax, [r14 + r14]
add r14, r14
jb 0x45f86e
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45f86e
mov r8d, 2
mov rcx, qword [rsp + 0x70]
mov rdx, r14
call fcn.0040a2d0
cmp r13, qword [rsp + 0x58]
jne 0x45f88c
lea rcx, [rsp + 0x50]
mov rdx, r13
call fcn.00423f40
mov rsi, qword [rsp + 0x50]
mov r13, qword [rsp + 0x60]
mov word [rsi + r13*2], 0x3d
add r13, 1
mov qword [rsp + 0x60], r13
mov r15, qword [rsp + 0xf0]
mov r14, qword [rsp + 0xf8]
mov r8, qword [rsp + 0x100]
lea rax, [r15 + r8]
xor ebx, ebx
mov rdx, r15
jmp 0x45f8cb
xor ebx, ebx
test bp, bp
je 0x45fae2
mov bp, 1
test bx, bx
jne 0x45f8c0
cmp rdx, rax
je 0x45f96b
movzx ecx, byte [rdx]
test cl, cl
js 0x45f8f0
add rdx, 1
mov esi, ecx
xor ebx, ebx
mov ebp, esi
jmp 0x45f8c2
mov esi, ecx
and esi, 0x1f
movzx edi, byte [rdx + 1]
and edi, 0x3f
cmp cl, 0xdf
jbe 0x45f934
movzx ebx, byte [rdx + 2]
shl edi, 6
and ebx, 0x3f
or ebx, edi
cmp cl, 0xf0
jb 0x45f947
movzx ecx, byte [rdx + 3]
add rdx, 4
and esi, 7
shl esi, 0x12
shl ebx, 6
and ecx, 0x3f
or ecx, ebx
or esi, ecx
cmp esi, 0xffff
jbe 0x45f8ea
jmp 0x45f958
add rdx, 2
shl esi, 6
or esi, edi
cmp esi, 0xffff
ja 0x45f958
jmp 0x45f8ea
add rdx, 3
shl esi, 0xc
or esi, ebx
cmp esi, 0xffff
jbe 0x45f8ea
and esi, 0x3ff
or esi, 0xdc00
mov ebx, esi
jmp 0x45f8c2
mov qword [rsp + 0x120], r15
mov qword [rsp + 0x128], r14
mov qword [rsp + 0x130], r8
mov qword [rsp + 0x80], r15
mov qword [rsp + 0x88], rax
mov word [rsp + 0x90], 0
lea rcx, [rsp + 0x50]
lea rsi, [rsp + 0x80]
mov rdx, rsi
call fcn.00428da0
test r14, r14
jle 0x45f9cc
mov r8, r14
not r8
shr r8, 0x3f
mov rcx, r15
mov rdx, r14
call fcn.0040a2d0
mov r13, qword [rsp + 0x60]
cmp r13, qword [rsp + 0x58]
jne 0x45f9f4
lea rcx, [rsp + 0x50]
mov rdx, r13
call fcn.00423f40
lea rdx, [rsp + 0x2a0]
mov r13, qword [rsp + 0x60]
jmp 0x45f9fc
lea rdx, [rsp + 0x2a0]
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x78], rax
mov word [rax + r13*2], 0
add r13, 1
mov qword [rsp + 0x60], r13
jmp 0x45f678
test rdx, rdx
jle 0x45fa2f
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
jle 0x45fa53
mov rcx, qword [rsp + 0xf0]
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
test r14, r14
je 0x45fafc
lea rax, [r14 + r14]
add r14, r14
jb 0x45fafc
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45fafc
mov r8d, 2
mov rcx, qword [rsp + 0x70]
jmp 0x45faf4
cmp r13, 0xf
ja 0x45fec5
xor eax, eax
mov qword [rsp + 0x110], rax
xor eax, eax
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [r12 + rax], 0x2e
je 0x45ff3e
add rax, 1
cmp r13, rax
jne 0x45fab0
jmp 0x45ff4b
xor r15d, r15d
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jg 0x45eae7
jmp 0x45eafe
test r14, r14
jle 0x45fafc
mov r8, r14
not r8
shr r8, 0x3f
mov rcx, r15
mov rdx, r14
call fcn.0040a2d0
xor r14d, r14d
lea rcx, [rsp + 0x2a0]
call fcn.004188b0
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x45fb45
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45fb45
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45fb45
mov rcx, qword [rsp + 0x50]
mov r8d, 2
call fcn.0040a2d0
lea rax, str.nul_byte_found_in_provided_data
mov rcx, qword [rsp + 0x118]
mov qword [rcx + 8], rax
mov qword [rcx], 1
jmp 0x45fe04
xor ebx, ebx
mov rcx, rax
nop dword [rax]
cmp rdx, rbx
je 0x45fedc
mov rsi, rbx
lea rbp, [rcx - 1]
add rbx, 1
cmp byte [rcx + rdx - 1], 0x2e
mov rcx, rbp
jne 0x45fb70
mov r8, rdx
sub r8, rbx
lea rcx, [r8 + 1]
cmp rdx, rcx
jb 0x4618cc
cmp rdx, rbx
jne 0x4608c9
xor ecx, ecx
mov r8, rdx
jmp 0x4608d4
mov qword [rsp + 0x2a0], r8
mov qword [rsp + 0x2a8], rcx
mov word [rsp + 0x2b0], 0
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0x2a0]
call fcn.00428f00
mov rdx, qword [rsp + 0x90]
cmp rdx, qword [rsp + 0x88]
mov qword [rsp + 0x70], r14
jne 0x45fc0f
lea rcx, [rsp + 0x80]
call fcn.00423f40
mov rdx, qword [rsp + 0x90]
lea rax, [rsp + 0x88]
mov r13, qword [rsp + 0x80]
mov word [r13 + rdx*2], 0
add rdx, 1
mov qword [rsp + 0x90], rdx
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x120], xmm0
mov r14, r13
movdqa xmm0, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x120], r14
movdqu xmmword [rsp + 0x128], xmm0
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], 0
lea rsi, [0x00943190]
mov rcx, rsi
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0x2a0], 0
mov qword [rsp + 0x2b0], 0
mov qword [rsp + 0x2c0], 0
cmp byte [rsp + 0xcf], 0
lea rax, [rsp + 0x260]
lea rdx, [rsp + 0x50]
cmovne rdx, rax
mov qword [rsp + 0x50], 1
mov rbx, qword [rsp + 0x178]
lea rcx, [rbx + 0x68]
cmp dword [rbx + 0x68], 5
cmove rcx, rdx
cmp dword [rbx + 0x78], 5
lea rsi, [rbx + 0x78]
cmove rsi, rax
lea rbp, [rbx + 0x88]
cmp dword [rbx + 0x88], 5
cmove rbp, rax
lea r8, [rsp + 0x2a0]
mov edx, 0xfffffff6
call fcn.00462040
mov rdi, rdx
test rax, rax
je 0x45fe93
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], rdi
mov qword [rax], 1
cmp qword [rsp + 0x2a0], 0
je 0x45fd54
mov rcx, qword [rsp + 0x2a8]
call sub.KERNEL32.dll_CloseHandle
cmp qword [rsp + 0x2b0], 0
je 0x45fd6c
mov rcx, qword [rsp + 0x2b8]
call sub.KERNEL32.dll_CloseHandle
cmp qword [rsp + 0x2c0], 0
je 0x45fd84
mov rcx, qword [rsp + 0x2c8]
call sub.KERNEL32.dll_CloseHandle
lea rcx, [0x00943190]
call sub.KERNEL32.dll_ReleaseSRWLockExclusive
mov rdx, qword [rsp + 0x128]
test rdx, rdx
je 0x45fdca
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45fdca
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45fdca
mov r8d, 2
mov rcx, r14
call fcn.0040a2d0
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
je 0x45fe04
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45fe04
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45fe04
mov r8d, 2
mov rcx, r15
call fcn.0040a2d0
mov rdx, qword [rsp + 0x188]
test rdx, rdx
je 0x45fe43
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45fe43
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45fe43
mov rcx, qword [rsp + 0x180]
mov r8d, 2
call fcn.0040a2d0
mov rdx, qword [rsp + 0x278]
test rdx, rdx
je 0x45ef2c
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45ef2c
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45ef2c
mov rcx, qword [rsp + 0x270]
mov r8d, 2
call fcn.0040a2d0
jmp 0x45ef2c
lea r8, [rsp + 0x2b0]
mov rcx, rsi
mov edx, 0xfffffff5
call fcn.00462040
mov rbx, rdx
test rax, rax
je 0x45fee6
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], rbx
mov qword [rax], 1
jmp 0x45ff22
mov cl, 0x2e
mov rdx, r12
mov r8, r13
call fcn.004aa5f0
mov qword [rsp + 0x110], rax
jmp 0x45ff4b
mov rcx, rax
xor eax, eax
jmp 0x4608d4
lea r8, [rsp + 0x2c0]
mov rcx, rbp
mov edx, 0xfffffff4
call fcn.00462040
mov rsi, rdx
test rax, rax
je 0x46098d
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], rsi
mov qword [rax], 1
mov rcx, rbx
call sub.KERNEL32.dll_CloseHandle
mov rcx, rdi
call sub.KERNEL32.dll_CloseHandle
cmp qword [rsp + 0x2a0], 0
jne 0x45fd47
jmp 0x45fd54
mov eax, 1
mov qword [rsp + 0x110], rax
test r15, r15
je 0x4600af
add r14, r15
mov qword [rsp + 0x2a0], r15
mov qword [rsp + 0x2a8], r14
mov word [rsp + 0x2b0], 0
mov byte [rsp + 0x2b8], 1
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0x2a0]
call fcn.0045a8f0
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x4600af
lea rdi, [rsp + 0x80]
lea rbx, [rsp + 0x2a0]
lea r14, [rsp + 0xf0]
lea r15, str.exeNULexit_code:
jmp 0x45ffdc
mov rcx, rdi
mov rdx, rbx
call fcn.0045a8f0
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x4600af
mov rdx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
test rax, rax
je 0x460092
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rax
mov rcx, rdi
mov rdx, r12
mov r8, r13
call fcn.00448dd0
cmp qword [rsp + 0x110], 1
je 0x460037
mov r8d, 3
mov rcx, rdi
mov rdx, r15
call fcn.00449be0
mov rbp, qword [rsp + 0x80]
mov r8, qword [rsp + 0x90]
mov rcx, r14
mov rdx, rbp
call fcn.00461f20
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jle 0x460071
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, rbp
call fcn.0040a2d0
mov rbp, qword [rsp + 0xf0]
test rbp, rbp
jne 0x460395
mov rcx, rdi
mov rdx, rbx
call fcn.0045a8f0
jmp 0x45ffcb
test rdx, rdx
jle 0x45ffc0
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
jmp 0x45ffc0
lea rcx, [rsp + 0x2a0]
call fcn.0045ab70
cmp qword [rsp + 0x2a0], 0
je 0x4602b9
lea rcx, [rsp + 0x2a0]
call fcn.0041ab90
xor edi, edi
mov r8d, 0x400
lea rcx, [rsp + 0x2a0]
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0xd0], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xd8], xmm0
mov ebx, 0x200
mov eax, 2
mov qword [rsp + 0x78], rax
cmp rbx, 0x201
jb 0x460142
jmp 0x460160
mov rbx, r8
jae 0x4601fc
cmp rbx, 0x201
jae 0x460160
mov r15d, 0x200
lea r14, [rsp + 0x2a0]
jmp 0x4601a6
mov r8, rbx
sub r8, rdi
mov rax, qword [rsp + 0xd8]
sub rax, rdi
cmp rax, r8
jae 0x460193
lea rcx, [rsp + 0xd0]
mov rdx, rdi
call fcn.004242f0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0xe0], rbx
mov rdi, rbx
mov r15, rbx
mov r14, qword [rsp + 0x78]
mov rbp, r14
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov rcx, r14
mov edx, ebx
call sub.KERNEL32.dll_GetSystemDirectoryW
mov esi, eax
test eax, eax
jne 0x4601cd
call sub.KERNEL32.dll_GetLastError
test eax, eax
jne 0x4603a2
mov r8d, esi
cmp rbx, r8
jne 0x460130
call sub.KERNEL32.dll_GetLastError
cmp eax, 0x7a
jne 0x4617ba
add rbx, rbx
cmp rbx, 0x201
jae 0x460160
jmp 0x460142
cmp r15, r8
jb 0x4618b5
lea rcx, [rsp + 0xf0]
mov rdx, rbp
call fcn.00446970
lea rcx, [rsp + 0xf0]
mov rdx, r12
mov r8, r13
call fcn.00448dd0
cmp qword [rsp + 0x110], 1
je 0x46024d
lea rdx, str.exeNULexit_code:
lea rcx, [rsp + 0xf0]
mov r8d, 3
call fcn.00449be0
mov rdi, qword [rsp + 0xf0]
mov r8, qword [rsp + 0x100]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.00461f20
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
jle 0x460289
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, rdi
call fcn.0040a2d0
movdqu xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsp + 0x88], xmm0
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x80], 0
mov sil, 1
jmp 0x4603c5
movdqu xmm0, xmmword [rsp + 0x2a8]
movdqa xmmword [rsp + 0x50], xmm0
mov rdi, qword [rsp + 0x2b8]
mov qword [rsp + 0x60], rdi
mov rcx, qword [rsp + 0x50]
mov rdx, rdi
call fcn.0044a100
test rax, rax
je 0x4602f1
cmp rdi, rdx
jb 0x4602f1
mov qword [rsp + 0x60], rdx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x90], rax
movdqa xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x80], xmm0
lea rcx, [rsp + 0x80]
mov rdx, r12
mov r8, r13
call fcn.00448dd0
cmp qword [rsp + 0x110], 1
je 0x460345
lea rdx, str.exeNULexit_code:
lea rcx, [rsp + 0x80]
mov r8d, 3
call fcn.00449be0
mov rdi, qword [rsp + 0x80]
mov r8, qword [rsp + 0x90]
lea rcx, [rsp + 0xf0]
mov rdx, rdi
call fcn.00461f20
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jle 0x460384
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, rdi
call fcn.0040a2d0
mov rbp, qword [rsp + 0xf0]
test rbp, rbp
je 0x4600d8
movups xmm6, xmmword [rsp + 0xf8]
jmp 0x4606d7
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x80], 1
xor esi, esi
mov rdx, qword [rsp + 0xd8]
test rdx, rdx
je 0x460401
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x460401
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x460401
mov r8d, 2
mov rcx, qword [rsp + 0x78]
call fcn.0040a2d0
test sil, sil
je 0x460417
mov rbp, qword [rsp + 0x88]
test rbp, rbp
jne 0x4606cf
lea rcx, [rsp + 0x80]
call fcn.00418660
xor ebx, ebx
lea rcx, [rsp + 0x2a0]
mov r8d, 0x400
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0xd0], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0xd8], xmm0
mov edi, 0x200
mov eax, 2
mov qword [rsp + 0x78], rax
cmp rdi, 0x201
jb 0x460482
jmp 0x4604a0
mov rdi, r8
jae 0x46053c
cmp rdi, 0x201
jae 0x4604a0
mov ebp, 0x200
lea r14, [rsp + 0x2a0]
jmp 0x4604e6
mov r8, rdi
sub r8, rbx
mov rax, qword [rsp + 0xd8]
sub rax, rbx
cmp rax, r8
jae 0x4604d3
lea rcx, [rsp + 0xd0]
mov rdx, rbx
call fcn.004242f0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0xe0], rdi
mov rbx, rdi
mov rbp, rdi
mov r14, qword [rsp + 0x78]
mov r15, r14
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov rcx, r14
mov edx, edi
call sub.KERNEL32.dll_GetWindowsDirectoryW
mov esi, eax
test eax, eax
jne 0x46050d
call sub.KERNEL32.dll_GetLastError
test eax, eax
jne 0x46065e
mov r8d, esi
cmp rdi, r8
jne 0x460470
call sub.KERNEL32.dll_GetLastError
cmp eax, 0x7a
jne 0x4617d7
add rdi, rdi
cmp rdi, 0x201
jae 0x4604a0
jmp 0x460482
cmp rbp, r8
jb 0x4618da
lea rcx, [rsp + 0xf0]
mov rdx, r15
call fcn.00446970
lea rcx, [rsp + 0xf0]
mov rdx, r12
mov r8, r13
call fcn.00448dd0
cmp qword [rsp + 0x110], 1
je 0x46058d
lea rdx, str.exeNULexit_code:
lea rcx, [rsp + 0xf0]
mov r8d, 3
call fcn.00449be0
mov rdi, qword [rsp + 0xf0]
mov r8, qword [rsp + 0x100]
lea rcx, [rsp + 0x50]
mov rdx, rdi
call fcn.00461f20
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
jle 0x4605c9
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, rdi
call fcn.0040a2d0
movdqu xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsp + 0x88], xmm0
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x80], 0
mov sil, 1
jmp 0x460681
xor r14d, r14d
lea rcx, [rsp + 0x2a0]
call fcn.004188b0
cmp r13, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
jne 0x46062f
xor r14d, r14d
lea rcx, [rsp + 0x50]
mov rdx, r13
call fcn.00423f40
mov rcx, qword [rsp + 0x50]
mov r13, qword [rsp + 0x60]
lea rax, [rsp + 0x58]
mov word [rcx + r13*2], 0
add r13, 1
mov qword [rsp + 0x60], r13
mov r15, qword [rsp + 0x50]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x230], xmm0
mov r14, r15
jmp 0x45f463
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x80], 1
xor esi, esi
mov rdx, qword [rsp + 0xd8]
test rdx, rdx
je 0x4606bd
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x4606bd
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x4606bd
mov r8d, 2
mov rcx, qword [rsp + 0x78]
call fcn.0040a2d0
test sil, sil
je 0x4606f8
mov rbp, qword [rsp + 0x88]
test rbp, rbp
je 0x4606f8
movups xmm6, xmmword [rsp + 0x90]
mov qword [rsp + 0x128], rbp
movups xmmword [rsp + 0x130], xmm6
mov qword [rsp + 0x120], 0
jmp 0x45eb9f
lea rcx, [rsp + 0x80]
call fcn.00418660
lea rdx, str.PATHlock_count_overflow_in_reentrant_mutexlibrary_std_src_sys_common_remutex.rs
lea rcx, [rsp + 0xd0]
mov r8d, 4
call fcn.00435cb0
cmp qword [rsp + 0xd0], 0
je 0x4608bd
movdqu xmm0, xmmword [rsp + 0xd0]
movdqa xmmword [rsp + 0x50], xmm0
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x60], rax
mov r14, qword [rsp + 0x50]
add rax, r14
mov qword [rsp + 0x2a0], r14
mov qword [rsp + 0x2a8], rax
mov word [rsp + 0x2b0], 0
mov byte [rsp + 0x2b8], 1
lea rbx, [rsp + 0x80]
lea rdi, [rsp + 0x2a0]
lea r15, [rsp + 0xf0]
lea rsi, str.exeNULexit_code:
mov rcx, rbx
mov rdx, rdi
call fcn.0045a8f0
jmp 0x4607ab
mov rcx, rbx
mov rdx, rdi
call fcn.0045a8f0
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x4608a1
mov rdx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
test rax, rax
jne 0x4607e7
test rdx, rdx
jle 0x4607a0
mov r8, rdx
not r8
shr r8, 0x3f
call fcn.0040a2d0
jmp 0x4607a0
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rax
mov rcx, rbx
mov rdx, r12
mov r8, r13
call fcn.00448dd0
cmp qword [rsp + 0x110], 1
je 0x460829
mov r8d, 3
mov rcx, rbx
mov rdx, rsi
call fcn.00449be0
mov rbp, qword [rsp + 0x80]
mov r8, qword [rsp + 0x90]
mov rcx, r15
mov rdx, rbp
call fcn.00461f20
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jle 0x460863
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, rbp
call fcn.0040a2d0
mov rbp, qword [rsp + 0xf0]
test rbp, rbp
je 0x460793
movups xmm6, xmmword [rsp + 0xf8]
mov rdx, qword [rsp + 0x58]
test rdx, rdx
jle 0x4606d7
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, r14
call fcn.0040a2d0
jmp 0x4606d7
mov rdx, qword [rsp + 0x58]
test rdx, rdx
jle 0x4608bd
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, r14
call fcn.0040a2d0
lea rax, [0x0090be90]
jmp 0x45eb8b
lea rcx, [rdx + rbp]
add rcx, 1
mov rdx, rsi
test rax, rax
cmovne rcx, rax
test rcx, rcx
je 0x4608fd
test rax, rax
cmove r8, rdx
add rcx, r8
sub rcx, r14
cmp rdi, rcx
jb 0x4608fd
mov qword [rsp + 0x90], rcx
mov rdi, rcx
lea rcx, [rsp + 0x120]
mov rdx, r14
mov r8, rdi
call fcn.0045beb0
mov rdx, qword [rsp + 0x88]
test rdx, rdx
jle 0x45eb9f
mov r8, rdx
not r8
shr r8, 0x3f
mov rcx, r14
call fcn.0040a2d0
jmp 0x45eb9f
cmp r15, rsi
jb 0x4618f1
test r12d, r12d
je 0x460a9e
lea r15, [rsi + rsi]
mov edx, 2
mov rcx, r15
call fcn.0040a2c0
test rax, rax
mov rdi, qword [rsp + 0x70]
je 0x461905
mov r12, rax
jmp 0x460aac
call sub.KERNEL32.dll_GetLastError
mov r12d, eax
shl r12, 0x20
or r12, 2
xor ebp, ebp
mov rdi, qword [rsp + 0x70]
jmp 0x460abd
mov qword [rsp + 0x1f0], rdi
mov qword [rsp + 0x1f8], rbx
mov qword [rsp + 0x200], rsi
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x180]
lea rax, [rsp + 0x80]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r13
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 1
xor r8d, r8d
xor r9d, r9d
call sub.KERNEL32.dll_CreateProcessW
test eax, eax
je 0x460ec0
movdqa xmm0, xmmword [rsp + 0x80]
movups xmm1, xmmword [rsp + 0x2a0]
movups xmm2, xmmword [rsp + 0x2b0]
movups xmm3, xmmword [rsp + 0x2c0]
mov rax, qword [rsp + 0x118]
movups xmmword [rax + 0x38], xmm3
movups xmmword [rax + 0x28], xmm2
movups xmmword [rax + 0x18], xmm1
movdqu xmmword [rax + 8], xmm0
mov qword [rax], 0
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
mov rcx, rbx
call sub.KERNEL32.dll_CloseHandle
mov rcx, rdi
call sub.KERNEL32.dll_CloseHandle
lea rcx, [0x00943190]
call sub.KERNEL32.dll_ReleaseSRWLockExclusive
lea rcx, [rsp + 0x120]
call fcn.00419600
xor edi, edi
lea rcx, [rsp + 0xf0]
call fcn.00419600
lea rcx, [rsp + 0x180]
call fcn.00419600
lea rcx, [rsp + 0x270]
call fcn.00419600
jmp 0x45ef2c
mov r12d, 2
xor r15d, r15d
mov rdi, qword [rsp + 0x70]
mov rcx, r12
mov rdx, rbp
mov r8, r15
call sub.msvcrt.dll_memcpy
mov bpl, 1
mov rdx, qword [rsp + 0x88]
test rdx, rdx
je 0x460af7
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x460af7
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x460af7
mov r8d, 2
mov rcx, r13
call fcn.0040a2d0
test bpl, bpl
je 0x460dc8
mov qword [rsp + 0x120], r12
mov qword [rsp + 0x128], rsi
mov qword [rsp + 0x130], rsi
lea rdx, str.cmd.exefallback_RNG_broken:
lea rcx, [rsp + 0x2a0]
mov r8d, 8
call fcn.004adef0
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x90], rax
movups xmm0, xmmword [rsp + 0x2a0]
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x2a0], xmm0
mov qword [rsp + 0x2b0], rax
movdqa xmm0, xmmword [0x009061b0]
movdqu xmmword [rsp + 0x2b8], xmm0
mov qword [rsp + 0x2c8], 1
mov word [rsp + 0x2d0], 0
mov r14, qword [rsp + 0x2a0]
mov rdi, qword [rsp + 0x2a8]
lea rax, [rdi + 3]
mov qword [rsp + 0x110], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x2c0]
mov qword [rsp + 0x78], rax
mov rbx, 0xffffffffffffffff
xor r15d, r15d
xor ecx, ecx
mov rbp, r14
jmp 0x460c15
mov r8d, 1
mov r15, qword [rsp + 0x70]
sub r8, r15
inc r8
cmove r8, rbx
lea rcx, [rsp + 0x120]
mov rdx, rsi
call fcn.004242f0
mov r12, qword [rsp + 0x120]
mov rcx, r15
mov rbp, r14
mov rbx, 0xffffffffffffffff
mov word [r12 + rsi*2], r13w
add rsi, 1
mov qword [rsp + 0x130], rsi
test rbp, rbp
je 0x460cf0
movzx r13d, word [rsp + 0x2b0]
test r13w, r13w
je 0x460c46
mov word [rsp + 0x2b0], 0
cmp rsi, qword [rsp + 0x128]
jne 0x460c04
jmp 0x460d5c
cmp rdi, rbp
je 0x460ce1
lea r14, [rbp + 1]
mov qword [rsp + 0x2a0], r14
movzx r13d, byte [rbp]
test r13b, r13b
jns 0x460d4b
mov r8, rdi
mov eax, r13d
and eax, 0x1f
lea r14, [rbp + 2]
mov qword [rsp + 0x2a0], r14
movzx edi, byte [rbp + 1]
and edi, 0x3f
cmp r13b, 0xdf
jbe 0x460d2d
lea r14, [rbp + 3]
mov qword [rsp + 0x2a0], r14
movzx edx, byte [rbp + 2]
shl edi, 6
and edx, 0x3f
or edx, edi
cmp r13b, 0xf0
jb 0x460d37
lea r14, [rbp + 4]
mov qword [rsp + 0x2a0], r14
movzx r13d, byte [rbp + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and r13d, 0x3f
or r13d, edx
or r13d, eax
cmp r13d, 0x110000
mov rdi, r8
jne 0x460d42
mov qword [rsp + 0x2a0], 0
xor r14d, r14d
test rcx, rcx
jne 0x460df1
mov eax, 1
mov qword [rsp + 0x78], rax
xor ebp, ebp
mov eax, 1
mov qword [rsp + 0x70], rax
mov r15d, 1
mov ecx, 1
xor r13d, r13d
cmp rsi, qword [rsp + 0x128]
jne 0x460c04
jmp 0x460d5c
shl eax, 6
or eax, edi
mov r13d, eax
jmp 0x460d3f
shl eax, 0xc
or edx, eax
mov r13d, edx
mov rdi, r8
cmp r13d, 0xffff
ja 0x460d89
mov rbp, r14
cmp rsi, qword [rsp + 0x128]
jne 0x460c04
test r14, r14
je 0x460bca
mov rax, qword [rsp + 0x110]
sub rax, r14
shr rax, 2
mov r8d, 1
sub r8, r15
add r8, rax
cmovb r8, rbx
jmp 0x460bd8
add r13d, 0xffff0000
mov eax, r13d
shr eax, 0xa
or eax, 0xd800
and r13d, 0x3ff
or r13d, 0xdc00
mov word [rsp + 0x2b0], r13w
mov rbp, r14
mov r13d, eax
cmp rsi, qword [rsp + 0x128]
jne 0x460c04
jmp 0x460d5c
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], r12
mov qword [rax], 1
mov rdx, qword [rsp + 0x250]
test rdx, rdx
jne 0x45ee0b
jmp 0x45ebca
mov rdi, qword [rsp + 0x120]
lea rax, [rsp + 0x128]
movdqu xmm0, xmmword [rax]
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x50], rdi
mov rdx, qword [rsp + 0x248]
mov rcx, qword [rsp + 0x250]
mov rax, qword [rsp + 0x258]
cmp rax, 0x105
jae 0x460f5e
cmp rax, 6
jbe 0x460f5e
cmp word [rdx], 0x5c
jne 0x460f5e
cmp word [rdx + 2], 0x5c
jne 0x460f5e
cmp word [rdx + 4], 0x3f
jne 0x460f5e
movzx ebp, word [rdx + 6]
cmp bp, 0x5c
jne 0x460f5e
cmp word [rdx + 0xa], 0x3a
jne 0x460eed
cmp word [rdx + 0xc], 0x5c
jne 0x460eed
lea rbp, [rdx + 8]
mov qword [rsp + 0x120], rbp
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
lea rcx, [rsp + 0x2a0]
lea rdx, [rsp + 0x120]
lea r8, [rsp + 0x80]
call fcn.00463d00
jmp 0x460f82
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov rcx, qword [rsp + 0x118]
mov qword [rcx + 8], rax
mov qword [rcx], 1
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
jmp 0x45ff1a
cmp rax, 8
jb 0x460f5e
cmp bp, 0x5c
jne 0x460f5e
cmp word [rdx + 8], 0x55
jne 0x460f5e
cmp word [rdx + 0xa], 0x4e
jne 0x460f5e
cmp word [rdx + 0xc], 0x43
jne 0x460f5e
cmp word [rdx + 0xe], 0x5c
jne 0x460f5e
lea rbp, [rdx + 0xc]
mov word [rdx + 0xc], 0x5c
mov qword [rsp + 0x120], rbp
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x90], rax
lea rcx, [rsp + 0x2a0]
lea rdx, [rsp + 0x120]
lea r8, [rsp + 0x80]
call fcn.00463980
jmp 0x460f82
mov qword [rsp + 0x2a8], rdx
mov qword [rsp + 0x2b0], rcx
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x2a0], 0
cmp qword [rsp + 0x2a0], 0
mov rsi, qword [rsp + 0x2a8]
je 0x460feb
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], rsi
mov qword [rax], 1
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x46157a
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x46157a
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x46157a
mov r8d, 2
mov rcx, rdi
jmp 0x461575
movdqu xmm0, xmmword [rsp + 0x2b0]
movdqu xmmword [rsp + 0xf8], xmm0
mov qword [rsp + 0xf0], rsi
mov r12, qword [rsp + 0x100]
mov rax, qword [rsp + 0x178]
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x298], rcx
mov rcx, qword [rax + 0x28]
mov qword [rsp + 0x290], rcx
mov r14b, byte [rax + 0x9d]
lea rdx, [0x0090b726]
lea rcx, [rsp + 0x80]
mov r8d, 0xc
call fcn.004adef0
mov rbx, qword [rsp + 0x80]
mov r15, qword [rsp + 0x88]
movzx eax, word [rsp + 0x90]
test ax, ax
je 0x461273
mov dword [rsp + 0x174], eax
mov qword [rsp + 0x110], r12
mov qword [rsp + 0x78], rsi
mov byte [rsp + 0x70], r14b
xor r13d, r13d
lea r14, [r15 + 3]
mov rax, r14
sub rax, rbx
shr rax, 2
cmp rax, 4
mov ebp, 3
cmovae rbp, rax
movabs rax, 0x3fffffffffffffff
xor edi, edi
cmp rbp, rax
setb al
jae 0x461914
mov dil, al
add rdi, rdi
lea r12, [rbp + 2]
add r12, rbp
mov rcx, r12
mov rdx, rdi
call fcn.0040a2c0
test rax, rax
je 0x46191b
mov rcx, rax
add rbp, 1
mov eax, dword [rsp + 0x174]
mov word [rcx], ax
mov qword [rsp + 0x2a0], rcx
mov qword [rsp + 0x2a8], rbp
mov qword [rsp + 0x2b0], 1
mov edi, 1
lea rbp, [rsp + 0x2a0]
jmp 0x46113b
mov rcx, qword [rsp + 0x2a0]
mov word [rcx + rdi*2], r13w
add rdi, 1
mov qword [rsp + 0x2b0], rdi
mov r13d, r12d
test r13w, r13w
je 0x461149
xor r12d, r12d
jmp 0x461200
cmp rbx, r15
je 0x46122c
movzx r13d, byte [rbx]
test r13b, r13b
js 0x461167
add rbx, 1
xor r12d, r12d
jmp 0x461200
mov eax, r13d
and eax, 0x1f
movzx esi, byte [rbx + 1]
and esi, 0x3f
cmp r13b, 0xdf
jbe 0x4611b3
movzx edx, byte [rbx + 2]
shl esi, 6
and edx, 0x3f
or edx, esi
cmp r13b, 0xf0
jb 0x4611c1
movzx r13d, byte [rbx + 3]
and eax, 7
shl eax, 0x12
shl edx, 6
and r13d, 0x3f
or r13d, edx
or r13d, eax
cmp r13d, 0x110000
je 0x46122c
add rbx, 4
jmp 0x4611cd
add rbx, 2
shl eax, 6
or eax, esi
mov r13d, eax
jmp 0x4611cd
add rbx, 3
shl eax, 0xc
or edx, eax
mov r13d, edx
cmp r13d, 0xffff
jbe 0x461141
add r13d, 0xffff0000
mov eax, r13d
shr eax, 0xa
or eax, 0xd800
and r13d, 0x3ff
or r13d, 0xdc00
mov r12d, r13d
mov r13d, eax
cmp rdi, qword [rsp + 0x2a8]
jne 0x461127
mov r8, r14
sub r8, rbx
shr r8, 2
add r8, 1
mov rcx, rbp
mov rdx, rdi
call fcn.004242f0
jmp 0x46111f
mov rdi, qword [rsp + 0x2b0]
mov qword [rsp + 0x130], rdi
movdqu xmm0, xmmword [rsp + 0x2a0]
movdqa xmmword [rsp + 0x120], xmm0
cmp rdi, qword [rsp + 0x128]
mov r14b, byte [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x110]
je 0x461319
jmp 0x461331
cmp rbx, r15
je 0x4612fe
movzx eax, byte [rbx]
test al, al
mov byte [rsp + 0x70], r14b
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x110], r12
js 0x4612a5
mov dword [rsp + 0x174], eax
add rbx, 1
jmp 0x461088
mov ebp, eax
and ebp, 0x1f
movzx edx, byte [rbx + 1]
and edx, 0x3f
cmp al, 0xdf
jbe 0x46165a
movzx ecx, byte [rbx + 2]
shl edx, 6
and ecx, 0x3f
or ecx, edx
cmp al, 0xf0
jb 0x461668
movzx eax, byte [rbx + 3]
and ebp, 7
shl ebp, 0x12
shl ecx, 6
and eax, 0x3f
or eax, ecx
or eax, ebp
cmp eax, 0x110000
mov r14b, byte [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x110]
jne 0x461676
mov qword [rsp + 0x120], 2
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x128], xmm0
xor edi, edi
lea rcx, [rsp + 0x120]
mov rdx, rdi
call fcn.00423f40
mov rdi, qword [rsp + 0x130]
mov rax, qword [rsp + 0x120]
mov word [rax + rdi*2], 0x22
add rdi, 1
mov qword [rsp + 0x130], rdi
lea rax, [r12 + r12]
xor ecx, ecx
lea rbp, [0x0090b768]
cmp rax, rcx
je 0x46136d
cmp word [rsi + rcx], 0x22
lea rcx, [rcx + 2]
jne 0x461358
jmp 0x4614b0
test r12, r12
je 0x461392
movzx ecx, word [rsi + r12*2 - 2]
cmp cx, 0x5c
je 0x4614b0
lea rbp, [r12 - 1]
xor eax, eax
test cx, cx
cmove rax, rsi
jmp 0x461394
xor eax, eax
test rax, rax
cmove rbp, r12
cmovne rsi, rax
mov r15, qword [rsp + 0x128]
mov rax, r15
sub rax, rdi
cmp rax, rbp
jae 0x4613d5
lea rcx, [rsp + 0x120]
mov rdx, rdi
mov r8, rbp
call fcn.004242f0
mov r15, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x130]
mov r8, rbp
add r8, rbp
mov rbx, qword [rsp + 0x120]
lea rcx, [rbx + rdi*2]
mov rdx, rsi
call sub.msvcrt.dll_memcpy
add rdi, rbp
mov qword [rsp + 0x130], rdi
cmp rdi, r15
jne 0x46141f
lea rcx, [rsp + 0x120]
mov rdx, r15
call fcn.00423f40
mov rbx, qword [rsp + 0x120]
mov rdi, qword [rsp + 0x130]
mov word [rbx + rdi*2], 0x22
add rdi, 1
mov qword [rsp + 0x130], rdi
mov rbx, qword [rsp + 0x290]
shl rbx, 5
lea rdi, [rsp + 0x120]
mov rsi, qword [rsp + 0x298]
test rbx, rbx
je 0x461587
mov rdx, qword [rsp + 0x130]
cmp rdx, qword [rsp + 0x128]
jne 0x461478
mov rcx, rdi
call fcn.00423f40
mov rdx, qword [rsp + 0x130]
mov rax, qword [rsp + 0x120]
mov word [rax + rdx*2], 0x20
add rdx, 1
mov qword [rsp + 0x130], rdx
mov rcx, rdi
mov rdx, rsi
mov r8d, r14d
call fcn.004559e0
mov rbp, rax
add rsi, 0x20
add rbx, 0xffffffffffffffe0
test rax, rax
je 0x46144d
mov rdx, qword [rsp + 0x128]
test rdx, rdx
je 0x4614ef
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x4614ef
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x4614ef
mov rcx, qword [rsp + 0x120]
mov r8d, 2
call fcn.0040a2d0
mov rax, qword [rsp + 0x118]
mov qword [rax + 8], rbp
mov qword [rax], 1
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x46153b
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x46153b
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x46153b
mov rcx, qword [rsp + 0x50]
mov r8d, 2
call fcn.0040a2d0
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
je 0x46157a
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x46157a
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x46157a
mov rcx, qword [rsp + 0xf0]
mov r8d, 2
call fcn.0040a2d0
mov rdi, qword [rsp + 0x210]
jmp 0x45ebca
mov rdx, qword [rsp + 0x130]
cmp rdx, qword [rsp + 0x128]
jne 0x4615ae
lea rcx, [rsp + 0x120]
call fcn.00423f40
mov rdx, qword [rsp + 0x130]
mov rax, qword [rsp + 0x120]
mov word [rax + rdx*2], 0x22
add rdx, 1
mov qword [rsp + 0x130], rdx
mov rsi, qword [rsp + 0x120]
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x238], rax
movups xmm0, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0xd0], xmm0
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0xe0], rax
mov rdx, qword [rsp + 0xf8]
test rdx, rdx
je 0x45f0a1
lea rax, [rdx + rdx]
add rdx, rdx
jb 0x45f0a1
movabs rcx, 0x8000000000000001
add rax, rcx
add rcx, 1
cmp rax, rcx
jb 0x45f0a1
mov rcx, qword [rsp + 0xf0]
mov r8d, 2
call fcn.0040a2d0
jmp 0x45f0a1
add rbx, 2
shl ebp, 6
or ebp, edx
mov r13d, ebp
jmp 0x46167d
add rbx, 3
shl ebp, 0xc
or ecx, ebp
mov r13d, ecx
jmp 0x46167d
mov r13d, eax
add rbx, 4
cmp r13d, 0xffff
ja 0x461693
mov dword [rsp + 0x174], r13d
jmp 0x461088
add r13d, 0xffff0000
mov eax, r13d
shr eax, 0xa
or eax, 0xd800
and r13d, 0x3ff
or r13d, 0xdc00
mov dword [rsp + 0x174], eax
jmp 0x46108b
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x120], rax
lea rax, [0x0043b620]
mov qword [rsp + 0x128], rax
lea rax, str.comparing_environment_keys_failed:
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], 1
mov qword [rsp + 0x2b0], 0
lea rax, [rsp + 0x120]
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x2c8], 1
lea rdx, str.library_std_src_syswindowsprocess.rs
lea rcx, [rsp + 0x2a0]
call fcn.004a41c0
jmp 0x461926
call fcn.00498230
jmp 0x461926
mov rcx, rbx
mov rdx, rdi
call fcn.00498280
jmp 0x461926
mov rcx, rsi
mov rdx, rbx
call fcn.00498280
jmp 0x461926
call fcn.00498230
jmp 0x461926
call fcn.00498230
jmp 0x461926
mov rcx, rsi
mov rdx, rdi
call fcn.00498280
jmp 0x461926
lea rcx, str.assertion_failed:_self.height___0
lea r8, [0x00906d38]
mov edx, 0x21
call fcn.004a3ff0
jmp 0x461926
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.004a3ff0
jmp 0x461926
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.004a3ff0
jmp 0x461926
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x1a0], rax
lea rax, [0x0043b620]
mov qword [rsp + 0x1a8], rax
lea rax, str.failure_getting_env_string_from_OS:
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x2a8], 1
mov qword [rsp + 0x2b0], 0
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x2c0], rax
mov qword [rsp + 0x2c8], 1
lea rdx, str.library_std_src_syswindowsos.rs
lea rcx, [rsp + 0x2a0]
call fcn.004a41c0
jmp 0x461926
lea rcx, str.internal_error:_entered_unreachable_code
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.004a3ff0
jmp 0x461926
call fcn.00498230
jmp 0x461926
mov rcx, r13
mov rdx, rdi
call fcn.00498280
jmp 0x461926
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, r15
mov r8, rax
call fcn.004ab1c0
jmp 0x461926
lea r8, str._rustc_d394408fb38c4de61f765a3ed5189d2731a1da91librarycore_src_sliceiter.rs
call fcn.004ab0e0
jmp 0x461926
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, rbp
mov r8, rax
call fcn.004ab1c0
jmp 0x461926
lea r8, str.library_std_src_syswindowsmod.rs
mov rcx, rsi
mov rdx, r15
call fcn.004ab1c0
jmp 0x461926
mov edx, 2
mov rcx, r15
call fcn.00498280
jmp 0x461926
call fcn.00498230
jmp 0x461926
mov rcx, r12
mov rdx, rdi
call fcn.00498280
ud2