Function at 0x140003450
Capabilities:
Encode data using base64
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x290
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x14008ffc8]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov rsi, rdx
mov r14, rcx
xor r15d, r15d
mov edi, r15d
mov dword [rsp + 0x60], r15d
call qword [sym.imp.Qt5Core.dll_public:_class_QThread____ptr64___cdecl_QObject::thread_void_const___ptr64]
mov rbx, rax
call qword [sym.imp.Qt5Core.dll_public:_static_class_QThread____ptr64___cdecl_QThread::currentThread_void_]
cmp rax, rbx
je 0x140003590
xorps xmm0, xmm0
xorps xmm1, xmm1
xorps xmm2, xmm2
xorps xmm3, xmm3
xorps xmm4, xmm4
xorps xmm5, xmm5
xorps xmm6, xmm6
xorps xmm7, xmm7
xorps xmm8, xmm8
mov qword [rsp + 0x70], rsi
lea rax, str.const_QString
mov qword [rsp + 0x78], rax
movdqa xmmword [rbp - 0x80], xmm0
movdqa xmmword [rbp - 0x70], xmm1
movdqa xmmword [rbp - 0x60], xmm2
movdqa xmmword [rbp - 0x50], xmm3
movdqa xmmword [rbp - 0x40], xmm4
movdqa xmmword [rbp - 0x30], xmm5
movdqa xmmword [rbp - 0x20], xmm6
movdqa xmmword [rbp + 0x130], xmm7
movdqa xmmword [rbp + 0xf0], xmm8
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
lea rax, [rbp - 0x80]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x130]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0xf0]
lea r8, [rsp + 0x70]
lea rdx, [0x140069c30]
mov rcx, r14
call qword [sym.imp.Qt5Core.dll_public:_static_bool___cdecl_QMetaObject::invokeMethod_class_QObject____ptr64__char_const____ptr64__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument__class_QGenericArgument_]
jmp 0x140003d8b
lea rdx, [rbp + 0x110]
mov rcx, rsi
call qword [sym.imp.Qt5Core.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_QString::toStdString_void____ptr64]
nop
mov eax, dword [r14 + 0x10]
lea r12, [0x140000000]
test al, 8
je 0x140003832
mov qword [rbp + 0xf0], r15
mov qword [rbp + 0x100], r15
mov qword [rbp + 0x108], 0xf
mov byte [rbp + 0xf0], 0
mov dword [rsp + 0x60], 1
mov rsi, qword [rbp + 0x120]
lea rbx, [rbp + 0x110]
cmp qword [rbp + 0x128], 0x10
cmovae rbx, qword [rbp + 0x110]
lea rcx, [rsi*4]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
lea rdi, [rdx + 4]
test rdi, rdi
jne 0x14000362c
mov qword [rbp + 0x100], rdi
mov byte [rbp + rdi + 0xf0], dil
jmp 0x140003667
lea rcx, [rbp + 0xf0]
cmp rdi, 0xf
ja 0x140003654
mov qword [rbp + 0x100], rdi
mov r8, rdi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov byte [rbp + rdi + 0xf0], 0
jmp 0x140003667
mov byte [rsp + 0x20], 0
mov r9, rdi
xor r8d, r8d
mov rdx, rdi
call fcn.1400018b0
lea r10, [rbp + 0xf0]
mov r9, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0x108]
cmp rcx, 0x10
cmovae r10, r9
mov rdi, r10
mov r8, r15
test rsi, rsi
je 0x140003747
lea r9, [rsi + 1]
mov r11d, 0x3d
nop dword [rax]
movzx ecx, byte [r8 + rbx]
inc r8
shl ecx, 8
cmp r8, rsi
jae 0x1400036b7
movzx eax, byte [r8 + rbx]
add ecx, eax
inc r8
shl ecx, 8
cmp r8, rsi
jae 0x1400036c9
movzx eax, byte [r8 + rbx]
add ecx, eax
inc r8
mov rax, rcx
shr rax, 0x12
movzx eax, byte [rax + r12 + 0x699b0]
mov byte [rdi], al
mov rax, rcx
shr rax, 0xc
and eax, 0x3f
movzx eax, byte [rax + r12 + 0x699b0]
mov byte [rdi + 1], al
mov rax, rcx
shr rax, 6
and eax, 0x3f
movzx edx, byte [rax + r12 + 0x699b0]
mov byte [rdi + 2], dl
and ecx, 0x3f
movzx ecx, byte [rcx + r12 + 0x699b0]
cmp r8, rsi
cmova ecx, r11d
mov byte [rdi + 3], cl
mov eax, edx
cmp r8, r9
cmova eax, r11d
mov byte [rdi + 2], al
add rdi, 4
cmp r8, rsi
jb 0x1400036a0
mov rcx, qword [rbp + 0x108]
mov r9, qword [rbp + 0xf0]
sub rdi, r10
mov rdx, qword [rbp + 0x100]
cmp rdi, rdx
ja 0x140003772
lea rax, [rbp + 0xf0]
cmp rcx, 0x10
cmovae rax, r9
mov qword [rbp + 0x100], rdi
mov byte [rax + rdi], 0
jmp 0x1400037ca
sub rdi, rdx
mov rax, rcx
sub rax, rdx
cmp rdi, rax
ja 0x1400037b0
lea rax, [rdx + rdi]
mov qword [rbp + 0x100], rax
lea rbx, [rbp + 0xf0]
cmp rcx, 0x10
cmovae rbx, r9
add rbx, rdx
mov r8, rdi
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
mov byte [rdi + rbx], 0
jmp 0x1400037ca
mov byte [rsp + 0x20], 0
mov r9, rdi
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp + 0xf0]
call fcn.1400018b0
mov rdx, qword [rbp + 0x128]
cmp rdx, 0x10
jb 0x14000380e
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003809
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003809
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14005ed80
movups xmm0, xmmword [rbp + 0xf0]
movups xmmword [rbp + 0x110], xmm0
movups xmm1, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x120], xmm1
mov edi, r15d
jmp 0x140003a6c
test al, 4
je 0x140003a6c
mov rdi, qword [rbp + 0x120]
test rdi, rdi
jne 0x140003932
lea rsi, [rbp + 0x110]
mov rcx, qword [rbp + 0x110]
mov rax, qword [rbp + 0x128]
cmp rax, 0x10
cmovae rsi, rcx
cmp rdi, 0x10
jae 0x14000388c
movups xmm6, xmmword [rsi]
mov qword [rbp + 0x108], 0xf
mov qword [rbp + 0x100], rdi
mov edi, 4
jmp 0x140003a1d
mov rbx, rdi
or rbx, 0xf
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
cmova rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1400038e0
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140003dc5
mov rcx, rax
call fcn.14005ed44
mov rcx, rax
test rax, rax
je 0x140003a4b
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1400038ef
test rcx, rcx
je 0x1400038ec
call fcn.14005ed44
jmp 0x1400038ef
mov rax, r15
mov qword [rbp + 0xf0], rax
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp + 0x108], rbx
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x110]
movups xmm6, xmmword [rbp + 0xf0]
mov qword [rbp + 0x100], rdi
mov edi, 4
jmp 0x140003a1d
lea rbx, [rbp + 0x110]
cmp qword [rbp + 0x128], 0x10
cmovae rbx, qword [rbp + 0x110]
movups xmm0, xmmword [str.0123456789ABCDEF]
movups xmmword [rbp + 0xf0], xmm0
movzx eax, byte [0x140069b10]
mov byte [rbp + 0x100], al
lea rcx, [rdi + rdi*2]
call fcn.14005ed88
mov rsi, rax
mov r8, rax
lea r9, [rbx + rdi]
cmp rbx, r9
jae 0x1400039cb
nop dword [rax]
movzx ecx, byte [rbx]
cmp byte [rcx + r12 + 0x69a00], 0
je 0x140003996
mov byte [r8], cl
inc r8
jmp 0x1400039c3
mov byte [r8], 0x25
movzx eax, byte [rbx]
shr rax, 4
movzx eax, byte [rbp + rax + 0xf0]
mov byte [r8 + 1], al
movzx eax, byte [rbx]
and eax, 0xf
movzx eax, byte [rbp + rax + 0xf0]
mov byte [r8 + 2], al
add r8, 3
inc rbx
cmp rbx, r9
jb 0x140003980
mov qword [rbp + 0xf0], r15
mov qword [rbp + 0x100], r15
mov qword [rbp + 0x108], 0xf
cmp rsi, r8
je 0x1400039fb
sub r8, rsi
mov rdx, rsi
lea rcx, [rbp + 0xf0]
call fcn.140001cb0
mov rcx, rsi
call fcn.14005ed80
mov edi, 0xc
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x110]
movups xmm6, xmmword [rbp + 0xf0]
or edi, 2
cmp rax, 0x10
jb 0x140003a57
lea rdx, [rax + 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003a52
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003a52
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14005ed80
movups xmmword [rbp + 0x110], xmm6
movups xmm0, xmmword [rbp + 0x100]
movups xmmword [rbp + 0x120], xmm0
mov ebx, dword [rbp + 0x120]
test byte [r14 + 0x10], 2
je 0x140003c93
lea rax, [r12 + 0x69ba8]
mov qword [rbp - 0x10], rax
lea rax, [0x140069bb0]
mov qword [rbp], rax
lea rcx, [rbp + 0x88]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
or edi, 0x10
mov dword [rsp + 0x60], edi
xor r8d, r8d
lea rdx, [rbp + 8]
lea rcx, [rbp - 0x10]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64____ptr64]
nop
mov rax, qword [rbp - 0x10]
movsxd rcx, dword [rax + 4]
lea rsi, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx - 0x10], rsi
mov rax, qword [rbp - 0x10]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx - 0x14], edx
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 8], rax
mov qword [rbp + 0x70], r15
mov dword [rbp + 0x78], r15d
mov edx, ebx
lea rcx, [rbp]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_int____ptr64]
mov rcx, rax
lea rdx, [0x140069bbc]
call fcn.140002990
nop
mov qword [rbp + 0x130], r15
mov qword [rbp + 0x140], r15
mov qword [rbp + 0x148], 0xf
mov byte [rbp + 0x130], 0
or edi, 0x40
mov dword [rsp + 0x60], edi
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
mov ecx, dword [rbp + 0x78]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x140003b77
mov rax, qword [rbp + 0x48]
mov r8, qword [rax]
test r8, r8
je 0x140003b77
mov rax, qword [rbp + 0x28]
mov rdx, qword [rax]
cmp r8, qword [rbp + 0x70]
cmovb r8, qword [rbp + 0x70]
sub r8, rdx
jmp 0x140003bac
test cl, 4
jne 0x140003b9e
mov rax, qword [rbp + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x140003b9e
mov rax, qword [rbp + 0x20]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x58]
movsxd r8, dword [rax]
sub r8, rdx
add r8, rcx
jmp 0x140003bac
mov r8, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0xf0]
test rdx, rdx
je 0x140003bbe
lea rcx, [rbp + 0x130]
call fcn.140001cb0
nop
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea rcx, [rbp + 0x130]
cmp qword [rbp + 0x148], 0x10
cmovae rcx, qword [rbp + 0x130]
mov r9, rax
mov r8, qword [rbp + 0x140]
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rdx, qword [rbp + 0x148]
cmp rdx, 0x10
jb 0x140003c39
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003c34
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003c34
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14005ed80
mov qword [rbp + 0x140], r15
mov qword [rbp + 0x148], 0xf
mov byte [rbp + 0x130], 0
mov rax, qword [rbp - 0x10]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x10], rsi
mov rax, qword [rbp - 0x10]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx - 0x14], edx
lea rcx, [rbp + 8]
call fcn.140002b90
lea rcx, [rbp + 0x10]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x88]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x140003cd4
mov byte [rsp + 0x60], bl
mov eax, ebx
shr eax, 8
mov byte [rsp + 0x61], al
mov eax, ebx
shr eax, 0x10
mov byte [rsp + 0x62], al
mov eax, ebx
shr eax, 0x18
mov byte [rsp + 0x63], al
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9, rax
mov edx, 1
lea r8d, [rdx + 3]
lea rcx, [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea rcx, [rbp + 0x110]
cmp qword [rbp + 0x128], 0x10
cmovae rcx, qword [rbp + 0x110]
mov r8, rbx
mov r9, rax
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
test byte [r14 + 0x10], 1
je 0x140003d32
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9, rax
mov edx, 1
lea r8d, [rdx + 1]
lea rcx, [0x140069bb8]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
nop
mov rdx, qword [rbp + 0x128]
cmp rdx, 0x10
jb 0x140003d8b
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003d86
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003d86
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14005ed80
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.14005ee20
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.140001c70
nop
int3