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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x688
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x5f0], xmm6
mov byte [rbp + 0x4a8], r9b
mov r14, r8
mov r12, rdx
mov qword [rbp + 0x5b0], rcx
movzx eax, byte [rdx + 0xa0]
mov r8, qword [rdx + 0x98]
test al, al
mov qword [rbp + 0x5e8], rdx
jne 0x451b5d
test r8, r8
jne 0x451b5d
mov qword [rbp + 0x3d8], 0
xor eax, eax
mov qword [rbp + 0x5c8], rax
jmp 0x452574
mov qword [rbp + 0x5e0], r14
mov qword [rbp + 0x408], 0
mov qword [rbp + 0x418], 0
test al, al
jne 0x451cce
mov qword [rbp + 0x5d8], r8
call sub.KERNEL32.dll_GetEnvironmentStringsW
test rax, rax
je 0x4546ae
mov qword [rbp + 0x4b0], rax
mov qword [rbp + 0x4b8], rax
lea r12, [rbp + 0x560]
lea rbx, [rbp + 0x4f0]
lea r14, [rbp + 0x440]
nop word [rax + rax]
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x4b8]
call fcn.0044f3c0
mov r15, qword [rbp - 0x30]
movabs rax, 0x8000000000000000
cmp r15, rax
je 0x451cb4
mov rdi, qword [rbp - 0x28]
movups xmm6, xmmword [rbp - 0x20]
mov r13, qword [rbp - 0x10]
mov rsi, qword [rbp - 8]
mov rax, qword [rbp - 0x20]
add rax, rdi
mov qword [rbp + 0x440], rdi
mov qword [rbp + 0x448], rax
mov word [rbp + 0x450], 0
mov rcx, rbx
mov rdx, r14
call fcn.00426fe0
mov qword [rbp + 0x540], r15
mov qword [rbp + 0x548], rdi
movups xmmword [rbp + 0x550], xmm6
mov rax, qword [rbp + 0x500]
mov qword [r12 + 0x10], rax
movups xmm0, xmmword [rbp + 0x4f0]
movups xmmword [r12], xmm0
mov qword [rbp + 0x440], r13
mov qword [rbp + 0x448], rsi
lea rax, [rbp]
movups xmm0, xmmword [rax]
lea rax, [rbp + 0x450]
movups xmmword [rax], xmm0
mov rcx, rbx
lea rdx, [rbp + 0x408]
lea r8, [rbp + 0x540]
mov r9, r14
call fcn.00417640
mov rdx, qword [rbp + 0x4f0]
lea rax, [rdx*2]
test rax, rax
je 0x451bc0
mov rcx, qword [rbp + 0x4f8]
mov r8d, 1
call fcn.00404450
jmp 0x451bc0
mov rcx, qword [rbp + 0x4b0]
call sub.KERNEL32.dll_FreeEnvironmentStringsW
mov r12, qword [rbp + 0x5e8]
mov r8, qword [rbp + 0x5d8]
mov rax, qword [r12 + 0x88]
mov rcx, qword [r12 + 0x90]
xor edx, edx
test rax, rax
setne dl
cmove r8, rax
mov qword [rbp + 0x4f0], rdx
mov qword [rbp + 0x4f8], 0
mov qword [rbp + 0x500], rax
mov qword [rbp + 0x508], rcx
mov qword [rbp + 0x510], rdx
mov qword [rbp + 0x518], 0
mov qword [rbp + 0x520], rax
mov qword [rbp + 0x528], rcx
mov qword [rbp + 0x530], r8
lea r13, [rbp + 0x4f0]
nop dword [rax + rax]
mov rcx, r13
call fcn.0040b4b0
mov rbx, rax
test rax, rax
je 0x452387
mov rsi, rdx
movabs rax, 0x8000000000000000
cmp qword [rdx], rax
jne 0x451f40
mov rsi, qword [rbp + 0x408]
test rsi, rsi
je 0x451d40
mov r9, qword [rbx + 0x28]
mov rax, qword [rbx + 0x30]
mov r14, qword [rbp + 0x410]
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x4b0]
mov rdx, rsi
mov r8, r14
call fcn.0041cd30
cmp qword [rbp + 0x4b0], 0
jne 0x451d40
mov rax, qword [rbp + 0x4b8]
mov rdx, qword [rbp + 0x4c0]
mov rcx, qword [rbp + 0x4c8]
mov byte [rbp + 0x420], 0
test rdx, rdx
je 0x452111
mov rcx, qword [rax + rcx*8 + 0x3d8]
mov rax, rdx
dec rax
je 0x451e9e
mov r8, rax
and r8, 7
je 0x451e0b
xor r9d, r9d
nop dword [rax + rax]
movzx r10d, word [rcx + 0x3d2]
mov rcx, qword [rcx + r10*8 + 0x3d8]
inc r9
cmp r8, r9
jne 0x451df0
sub rax, r9
add rdx, 0xfffffffffffffffe
cmp rdx, 7
jb 0x451e9e
nop dword [rax]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
movzx edx, word [rcx + 0x3d2]
mov rcx, qword [rcx + rdx*8 + 0x3d8]
add rax, 0xfffffffffffffff8
jne 0x451e20
movzx eax, word [rcx + 0x3d2]
dec rax
mov qword [rbp + 0x4d0], rcx
mov qword [rbp + 0x4d8], 0
mov qword [rbp + 0x4e0], rax
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x4d0]
lea r8, [rbp + 0x420]
call fcn.0041c370
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x490], rax
movups xmm0, xmmword [rbp + 0x10]
movaps xmmword [rbp + 0x480], xmm0
movups xmm0, xmmword [rbp - 0x30]
movups xmm1, xmmword [rbp - 0x20]
movups xmm2, xmmword [rbp - 0x10]
movups xmm3, xmmword [rbp]
movaps xmmword [rbp + 0x470], xmm3
movaps xmmword [rbp + 0x460], xmm2
movaps xmmword [rbp + 0x450], xmm1
movaps xmmword [rbp + 0x440], xmm0
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x38]
movzx ecx, word [rdx + 0x3d2]
cmp rax, rcx
jae 0x452146
mov rcx, rdx
jmp 0x452179
mov r13, qword [rbx + 8]
mov r14, qword [rbx + 0x10]
test r14, r14
je 0x451f7e
js 0x45461e
mov rax, qword [0x004cc798]
movzx eax, byte [rax]
mov r12d, 1
mov edx, 1
mov rcx, r14
call fcn.00404440
test rax, rax
je 0x454621
mov rdi, rax
jmp 0x451f83
mov edi, 1
mov rcx, rdi
mov rdx, r13
mov qword [rbp + 0x5d8], r14
mov r8, r14
call sub.ntdll.dll_memcpy
movzx r15d, byte [rbx + 0x18]
mov rdx, qword [rbx + 0x28]
mov r13, qword [rbx + 0x30]
test r13, r13
je 0x452001
mov qword [rbp + 0x5c8], rdi
mov rax, r13
shr rax, 0x3e
lea rbx, [r13*2]
test rax, rax
jne 0x454631
mov rdi, rdx
mov rax, qword [0x004cc798]
movzx eax, byte [rax]
mov r14d, 2
mov edx, 2
mov rcx, rbx
call fcn.00404440
test rax, rax
je 0x454634
mov r12, rax
mov rdx, rdi
mov rdi, qword [rbp + 0x5c8]
jmp 0x452009
mov r12d, 2
xor ebx, ebx
mov rcx, r12
mov r8, rbx
call sub.ntdll.dll_memcpy
mov rax, qword [rbp + 0x5d8]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rax
mov byte [rbp - 0x18], r15b
mov qword [rbp - 0x10], r13
mov qword [rbp - 8], r12
mov qword [rbp], r13
mov rbx, qword [rsi + 8]
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x452083
mov r12, qword [rbp + 0x5e8]
lea r13, [rbp + 0x4f0]
js 0x454644
mov rax, qword [0x004cc798]
movzx eax, byte [rax]
mov r15d, 1
mov edx, 1
mov rcx, rdi
call fcn.00404440
test rax, rax
je 0x454647
mov r14, rax
jmp 0x452097
mov r14d, 1
mov r12, qword [rbp + 0x5e8]
lea r13, [rbp + 0x4f0]
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call sub.ntdll.dll_memcpy
movzx eax, byte [rsi + 0x18]
mov qword [rbp + 0x540], rdi
mov qword [rbp + 0x548], r14
mov qword [rbp + 0x550], rdi
mov byte [rbp + 0x558], al
lea rcx, [rbp + 0x440]
lea rdx, [rbp + 0x408]
lea r8, [rbp - 0x30]
lea r9, [rbp + 0x540]
call fcn.00417640
mov rdx, qword [rbp + 0x440]
lea rax, [rdx*2]
test rax, rax
je 0x451d40
mov rcx, qword [rbp + 0x448]
mov r8d, 1
call fcn.00404450
jmp 0x451d40
mov qword [rbp + 0x540], rax
mov qword [rbp + 0x548], 0
mov qword [rbp + 0x550], rcx
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x540]
lea r8, [rbp + 0x420]
call fcn.0041c370
jmp 0x452269
mov r8, qword [rbp + 0x30]
nop word [rax + rax]
mov rcx, qword [rdx + 0x160]
test rcx, rcx
je 0x452174
inc r8
movzx eax, word [rdx + 0x3d0]
mov rdx, rcx
cmp ax, word [rcx + 0x3d2]
jae 0x452150
jmp 0x452179
mov rax, r8
xor ecx, ecx
imul rdx, rax, 0x38
shl rax, 5
mov r8, qword [rcx + rdx + 0x198]
mov qword [rbp + 0x570], r8
movups xmm0, xmmword [rcx + rdx + 0x168]
movups xmm1, xmmword [rcx + rdx + 0x178]
movups xmm2, xmmword [rcx + rdx + 0x188]
movaps xmmword [rbp + 0x560], xmm2
movaps xmmword [rbp + 0x550], xmm1
movaps xmmword [rbp + 0x540], xmm0
mov r8, qword [rbp + 0x470]
mov qword [rcx + rdx + 0x198], r8
movaps xmm0, xmmword [rbp + 0x440]
movaps xmm1, xmmword [rbp + 0x450]
movaps xmm2, xmmword [rbp + 0x460]
movups xmmword [rcx + rdx + 0x188], xmm2
movups xmmword [rcx + rdx + 0x178], xmm1
movups xmmword [rcx + rdx + 0x168], xmm0
movups xmm0, xmmword [rcx + rax]
movups xmm1, xmmword [rcx + rax + 0x10]
lea rdx, [rbp + 0x578]
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
lea rdx, [rbp + 0x478]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rcx + rax], xmm0
movups xmmword [rcx + rax + 0x10], xmm1
movaps xmm0, xmmword [rbp + 0x540]
movaps xmm1, xmmword [rbp + 0x550]
movaps xmm2, xmmword [rbp + 0x560]
movaps xmm3, xmmword [rbp + 0x570]
movaps xmmword [rbp - 0x30], xmm0
movaps xmmword [rbp - 0x20], xmm1
movaps xmmword [rbp - 0x10], xmm2
movaps xmmword [rbp], xmm3
movaps xmm0, xmmword [rbp + 0x580]
movaps xmmword [rbp + 0x10], xmm0
mov rax, qword [rbp + 0x590]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x590], rax
movaps xmm0, xmmword [rbp + 0x10]
movaps xmmword [rbp + 0x580], xmm0
movaps xmm0, xmmword [rbp - 0x30]
movaps xmm1, xmmword [rbp - 0x20]
movaps xmm2, xmmword [rbp - 0x10]
movaps xmm3, xmmword [rbp]
movaps xmmword [rbp + 0x570], xmm3
movaps xmmword [rbp + 0x560], xmm2
dec qword [rbp + 0x418]
movaps xmmword [rbp + 0x550], xmm1
movaps xmmword [rbp + 0x540], xmm0
cmp byte [rbp + 0x420], 0
je 0x4522fa
test r14, r14
je 0x454657
mov rax, qword [rsi + 0x3d8]
mov qword [rbp + 0x408], rax
dec r14
mov qword [rbp + 0x410], r14
mov qword [rax + 0x160], 0
mov edx, 0x438
mov r8d, 8
mov rcx, rsi
call fcn.00404450
mov rdx, qword [rbp + 0x540]
mov rcx, qword [rbp + 0x548]
mov rbx, qword [rbp + 0x560]
mov r14, qword [rbp + 0x568]
mov rsi, qword [rbp + 0x578]
mov rdi, qword [rbp + 0x580]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x451d40
test rdx, rdx
je 0x452347
mov r8d, 1
call fcn.00404450
test rbx, rbx
je 0x452360
add rbx, rbx
mov r8d, 2
mov rcx, r14
mov rdx, rbx
call fcn.00404450
lea rax, [rsi*2]
test rax, rax
je 0x451d40
mov r8d, 1
mov rcx, rdi
mov rdx, rsi
call fcn.00404450
jmp 0x451d40
movups xmm0, xmmword [rbp + 0x408]
movups xmmword [rbp + 0x3e0], xmm0
mov rax, qword [rbp + 0x418]
mov qword [rbp + 0x3f0], rax
mov qword [rbp + 0x3d8], 1
mov rax, qword [0x004cc798]
movzx eax, byte [rax]
mov ebx, 4
mov edi, 1
mov ecx, 4
mov edx, 1
call fcn.00404440
test rax, rax
je 0x454730
mov rsi, rax
mov dword [rax], 0x48544150
add rax, 4
mov qword [rbp + 0x540], rsi
mov qword [rbp + 0x548], rax
mov word [rbp + 0x550], 0
lea rcx, [rbp + 0x440]
lea rdx, [rbp + 0x540]
call fcn.00426fe0
mov qword [rbp - 0x30], 4
mov qword [rbp + 0x5d0], rsi
mov qword [rbp - 0x28], rsi
mov qword [rbp - 0x20], 4
mov byte [rbp - 0x18], 0
movups xmm0, xmmword [rbp + 0x440]
movups xmmword [rbp - 0x10], xmm0
mov rax, qword [rbp + 0x450]
mov qword [rbp], rax
mov r15, qword [rbp + 0x3e0]
mov rdi, qword [rbp - 8]
test r15, r15
je 0x452533
mov r14d, dword [rbp]
mov rax, qword [rbp + 0x3e8]
mov qword [rbp + 0x5d8], rax
xor eax, eax
mov qword [rbp + 0x5c8], rax
lea rcx, [r15 + 0x168]
movzx eax, word [r15 + 0x3d2]
mov qword [rbp + 0x5b8], rax
imul rsi, rax, 0x38
lea rbx, [r15 - 0x10]
mov r12, 0xffffffffffffffff
nop word [rax + rax]
test rsi, rsi
je 0x4524e0
lea r13, [rcx + 0x38]
mov r8, qword [rcx + 0x28]
mov r9d, dword [rcx + 0x30]
mov dword [rsp + 0x20], 1
mov rcx, rdi
mov edx, r14d
call sub.KERNEL32.dll_CompareStringOrdinal
add rsi, 0xffffffffffffffc8
add rbx, 0x20
inc r12
mov rcx, r13
cmp eax, 3
je 0x4524a0
cmp eax, 1
jne 0x45250c
jmp 0x4524e7
mov r12, qword [rbp + 0x5b8]
mov rax, qword [rbp + 0x5d8]
sub rax, 1
jb 0x452942
mov qword [rbp + 0x5d8], rax
mov r15, qword [r15 + r12*8 + 0x3d8]
jmp 0x452475
cmp eax, 2
jne 0x454599
mov rax, qword [rbx - 8]
mov qword [rbp + 0x5c8], rax
mov rbx, qword [rbx]
mov r14, qword [rbp + 0x5e0]
mov r12, qword [rbp + 0x5e8]
jmp 0x452543
xor eax, eax
mov qword [rbp + 0x5c8], rax
mov r14, qword [rbp + 0x5e0]
mov rcx, qword [rbp + 0x5d0]
mov edx, 4
mov r8d, 1
call fcn.00404450
mov rdx, qword [rbp - 0x10]
test rdx, rdx
je 0x452574
add rdx, rdx
mov r8d, 2
mov rcx, rdi
call fcn.00404450
mov rdi, qword [r12 + 0x10]
lea r15, [0x004ae450]
test rdi, rdi
je 0x452ef3
mov r13, qword [r12 + 8]
cmp rdi, 4
jae 0x45259d
lea rax, [0x00459560]
jmp 0x4525c7
mov eax, dword [r13]
bswap eax
xor ecx, ecx
cmp eax, 0x5c5c3f5c
setb cl
cmp eax, 0x5c5c3f5d
adc ecx, 0xffffffff
lea rcx, [0x00459580]
lea rax, [0x00459560]
cmove rax, rcx
movzx esi, byte [rdi + r13 - 1]
mov ecx, esi
call rax
test al, al
jne 0x452ef3
movabs r15, 0x8000000000000000
lea r12, [rdi + r13]
cmp rdi, 3
jbe 0x45264d
movzx eax, byte [r12 - 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x2e
jne 0x452672
movzx eax, byte [r12 - 3]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
jne 0x452672
movzx eax, byte [r12 - 2]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x78
jne 0x452672
lea eax, [rsi - 0x41]
cmp al, 0x1a
setb al
shl al, 5
or al, sil
cmp al, 0x65
sete al
jmp 0x452674
xor eax, eax
nop
cmp rdi, rax
je 0x4527b5
movzx ecx, byte [r13 + rax]
cmp ecx, 0x2f
je 0x4526e4
inc rax
cmp ecx, 0x5c
jne 0x452650
jmp 0x4526e4
xor eax, eax
xor ecx, ecx
nop word cs:[rax + rax]
cmp rdi, rcx
je 0x4527b5
movzx edx, byte [r13 + rcx]
cmp edx, 0x2f
je 0x45269c
inc rcx
cmp edx, 0x5c
jne 0x452680
test al, al
je 0x4526e4
mov qword [rbp + 0x5b8], r12
lea rcx, [rbp - 0x30]
mov rdx, r13
mov r8, rdi
call fcn.004575b0
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
movabs rdx, 0x8000000000000000
cmp rcx, rdx
jne 0x45291d
mov qword [rbp + 0x4d8], rax
mov qword [rbp + 0x4d0], rdx
jmp 0x452ed2
test rdi, rdi
mov rbx, rdi
js 0x45471e
mov rax, qword [0x004cc798]
movzx eax, byte [rax]
mov edi, 1
mov edx, 1
mov rcx, rbx
call fcn.00404440
test rax, rax
je 0x454729
mov rsi, rax
mov rcx, rax
mov rdx, r13
mov r8, rbx
call sub.ntdll.dll_memcpy
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], rsi
mov qword [rbp - 0x20], rbx
mov byte [rbp - 0x18], 0
lea rdx, str..exeprogram_not_found
lea rcx, [rbp - 0x30]
mov r8d, 4
call fcn.00458ac0
mov rsi, qword [rbp - 0x30]
mov rbx, qword [rbp - 0x28]
mov rdi, qword [rbp - 0x20]
lea rcx, [rbp + 0x540]
mov rdx, rbx
mov r8, rdi
call fcn.00454e40
cmp qword [rbp + 0x540], r15
mov qword [rbp + 0x5b8], r12
jne 0x45288c
mov rcx, rbx
mov rdx, rdi
call fcn.00440080
test rax, rax
je 0x452e70
cmp rdx, 2
jne 0x4528ad
movzx ecx, word [rax]
cmp ecx, 0x2e2e
jne 0x4528ad
mov edx, 2
jmp 0x4528ea
xor r8d, r8d
lea r15, str.nul_byte_found_in_provided_data
mov rax, r13
jmp 0x4527dc
xor r8d, r8d
test cx, cx
je 0x452ef3
mov cx, 1
test r8w, r8w
jne 0x4527d0
cmp rax, r12
je 0x4528f2
movzx r8d, byte [rax]
test r8b, r8b
js 0x452800
inc rax
mov edx, r8d
jmp 0x45285c
mov edx, r8d
and edx, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp r8b, 0xdf
jbe 0x452852
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp r8b, 0xf0
jb 0x452866
movzx r8d, byte [rax + 3]
add rax, 4
and edx, 7
shl edx, 0x12
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
or edx, r8d
cmp edx, 0xffff
jbe 0x45285c
jmp 0x452878
add rax, 2
shl edx, 6
or edx, r10d
xor r8d, r8d
mov ecx, edx
jmp 0x4527d3
add rax, 3
shl edx, 0xc
or edx, r9d
cmp edx, 0xffff
jbe 0x45285c
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x4527d3
mov rax, qword [rbp + 0x550]
mov qword [rbp + 0x4e0], rax
movups xmm0, xmmword [rbp + 0x540]
movaps xmmword [rbp + 0x4d0], xmm0
jmp 0x452ebc
xor ecx, ecx
xor r11d, r11d
mov r10, rax
nop word cs:[rax + rax]
cmp rdx, r11
je 0x452947
mov r8, r11
lea r9, [r10 - 1]
inc r11
cmp byte [r10 + rdx - 1], 0x2e
mov r10, r9
jne 0x4528c0
mov r10, rdx
sub r10, r11
jne 0x452e37
xor r8d, r8d
jmp 0x452e50
cmp rdi, 0xf
ja 0x45294c
lea rax, [rdi - 1]
xor ecx, ecx
nop
cmp byte [r13 + rcx], 0x2e
sete byte [rbp + 0x5d8]
je 0x452964
lea rdx, [rcx + 1]
cmp rax, rcx
mov rcx, rdx
jne 0x452900
jmp 0x452964
mov rdx, qword [rbp - 0x20]
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x20], rdx
lea rcx, [rbp + 0x4d0]
lea rdx, [rbp - 0x30]
call fcn.00449aa0
jmp 0x452ed2
jmp 0x452523
jmp 0x452e44
mov cl, 0x2e
mov rdx, r13
mov r8, rdi
call fcn.00491f60
cmp rax, 1
sete byte [rbp + 0x5d8]
mov qword [rbp + 0x5b8], r12
mov rax, qword [rbp + 0x5c8]
test rax, rax
mov qword [rbp + 0x5d0], rdi
je 0x4529c6
add rbx, rax
mov qword [rbp + 0x540], rax
mov qword [rbp + 0x548], rbx
mov word [rbp + 0x550], 0
mov byte [rbp + 0x558], 1
lea rcx, [rbp - 0x30]
lea rdx, [rbp + 0x540]
call fcn.0044f560
mov rdx, qword [rbp - 0x30]
movabs r12, 0x8000000000000000
cmp rdx, r12
jne 0x452d2d
lea rsi, [rbp - 0x30]
lea rdi, [rbp + 0x540]
lea rbx, [rbp + 0x440]
lea r15, str.exe.NULexit_code:
jmp 0x452d51
mov rcx, rax
lea rax, [r9 + rdx]
inc rax
mov rdx, r8
mov r9, rdx
mov r8, rax
mov rdx, r10
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rbp + 0x4f0], rax
lea rax, [rbp + 0x4f0]
mov qword [rbp + 0x440], rax
lea rax, [0x00434a10]
mov qword [rbp + 0x448], rax
lea rax, str.comparing_environment_keys_failed:
mov qword [rbp + 0x540], rax
mov qword [rbp + 0x548], 1
mov qword [rbp + 0x560], 0
lea rax, [rbp + 0x440]
mov qword [rbp + 0x550], rax
mov qword [rbp + 0x558], 1
lea rdx, str.library_std_src_syspalwindowsprocess.rs
lea rcx, [rbp + 0x540]
call fcn.0048c3c0
jmp 0x454770
xor r12d, r12d
mov rcx, r12
mov rdx, r14
call fcn.0047efe0
jmp 0x454770
xor r14d, r14d
mov rcx, r14
mov rdx, rbx
call fcn.0047efe0
jmp 0x454770
xor r15d, r15d
mov rcx, r15
mov rdx, rdi
call fcn.0047efe0
jmp 0x454770
lea rcx, str.assertion_failed:_self.height___0
lea r8, [0x004aa340]
mov edx, 0x21
call fcn.0048c440
jmp 0x454770
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rbp + 0x440], rax
lea rax, [rbp + 0x440]
mov qword [rbp + 0x540], rax
lea rax, [0x00434a10]
mov qword [rbp + 0x548], rax
lea rax, str.failure_getting_env_string_from_OS:
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], 1
mov qword [rbp - 0x10], 0
lea rax, [rbp + 0x540]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], 1
lea rdx, str.library_std_src_syspalwindowsos.rs
lea rcx, [rbp - 0x30]
call fcn.0048c3c0
jmp 0x454770
mov qword [rbp + 0x5e0], r14
xor edi, edi
jmp 0x454730
mov qword [rbp + 0x5e0], r14
mov rcx, rdi
mov rdx, rbx
mov r14, qword [rbp + 0x5e0]
call fcn.0047efe0
jmp 0x454770