Function at 0x4195e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x54
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x60], ecx
mov ebx, dword [ebp + 0x20]
mov esi, dword [ebp + 0x1c]
mov eax, dword [0x587040]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, esi
push 0x57791e
call fcn.004bbe00
test al, al
je 0x419678
mov ebx, 0x57791e
push ebx
call fcn.00507c20
add esp, 4
mov ecx, esi
mov edi, eax
lea esi, [ebp - 0x44]
push eax
push ebx
push esi
call fcn.004bbf50
movsx eax, byte [esi + 0xb]
test eax, eax
jns 0x41963a
mov eax, dword [ebp - 0x40]
mov esi, dword [ebp - 0x44]
test eax, eax
js 0x419efd
sete cl
test esi, esi
setne dl
or dl, cl
je 0x419ef6
mov ebx, dword [ebp + 0x20]
mov ecx, ebx
push eax
push esi
push edi
push 0x57791e
call fcn.0046e440
cmp byte [ebp - 0x39], 0
jns 0x419675
push dword [ebp - 0x44]
call fcn.004ec97e
add esp, 4
mov esi, dword [ebp + 0x1c]
mov ecx, esi
push str.vmodule
call fcn.004bbe00
test al, al
je 0x4196ef
mov ebx, str.vmodule
push ebx
call fcn.00507c20
add esp, 4
mov edi, eax
lea esi, [ebp - 0x44]
mov ecx, dword [ebp + 0x1c]
push eax
push ebx
push esi
call fcn.004bbf50
movsx eax, byte [esi + 0xb]
test eax, eax
jns 0x4196b4
mov eax, dword [ebp - 0x40]
mov esi, dword [ebp - 0x44]
test eax, eax
mov ebx, dword [ebp + 0x20]
js 0x419efd
sete cl
test esi, esi
setne dl
or dl, cl
je 0x419ef6
mov ecx, ebx
push eax
push esi
push edi
push str.vmodule
call fcn.0046e440
cmp byte [ebp - 0x39], 0
jns 0x4196ef
push dword [ebp - 0x44]
call fcn.004ec97e
add esp, 4
mov esi, dword [ebp + 0x18]
cmp byte [esi + 0xc], 1
jne 0x41973c
movsx eax, byte [esi + 0xb]
mov edi, eax
test eax, eax
jns 0x419705
mov edi, dword [esi + 4]
test edi, edi
je 0x41973c
test al, al
jns 0x41970f
mov esi, dword [esi]
test edi, edi
js 0x419efd
test esi, esi
je 0x419ef6
mov ebx, str.edition
push ebx
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push edi
push esi
push eax
push ebx
mov ebx, dword [ebp + 0x20]
call fcn.0046e440
mov edi, dword [ebp + 0x1c]
mov ecx, edi
push str.autoupdateenableipv6
call fcn.004bbe00
test al, al
je 0x419766
mov esi, str.enableipv6
push esi
call fcn.00507c20
add esp, 4
mov ecx, ebx
push eax
push esi
call fcn.0046dd40
mov ecx, edi
push str.newautoupdaterlogic
call fcn.004bbe00
test al, al
jne 0x419dce
mov esi, dword [ebp + 0x14]
push edi
call fcn.00416f20
add esp, 4
cmp byte [esi + 0xc], 1
jne 0x4197d7
movsx edi, byte [esi + 0xb]
test edi, edi
jns 0x419799
mov edi, dword [esi + 4]
mov esi, dword [esi]
test edi, edi
js 0x419efd
sete dl
test esi, esi
setne cl
or cl, dl
je 0x419ef6
mov ecx, str.host
push ecx
mov ebx, eax
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push edi
push esi
push eax
mov eax, str.host
push eax
call fcn.0046e440
mov eax, ebx
mov edi, dword [ebp + 0x1c]
mov byte [ebp - 0x51], al
test al, al
jne 0x41992d
xor eax, eax
dec eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
push str.oauc_task_pipe
call fcn.00507c20
add esp, 4
cmp eax, 0x7ffffff8
jae 0x419f13
mov ebx, eax
lea edi, [ebp - 0x1c]
cmp eax, 0xa
jbe 0x419923
mov esi, ebx
or esi, 7
inc esi
push esi
call fcn.004ec94e
add esp, 4
mov dword [ebp - 0x1c], eax
or esi, 0x80000000
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], ebx
lea esi, [eax + ebx]
mov ecx, str.oauc_task_pipe
cmp eax, ecx
seta dl
cmp esi, ecx
setbe cl
or cl, dl
je 0x419f0c
test ebx, ebx
je 0x41985f
push ebx
push str.oauc_task_pipe
push eax
call fcn.004f03c0
add esp, 0xc
mov byte [esi], 0
lea esi, [ebp - 0x44]
push edi
push dword [ebp - 0x58]
push esi
call fcn.0044e210
add esp, 0xc
cmp byte [ebp - 0x11], 0
jns 0x419883
push dword [ebp - 0x1c]
call fcn.004ec97e
add esp, 4
movsx edi, byte [ebp - 0x39]
test edi, edi
cmovs edi, dword [ebp - 0x40]
cmovs esi, dword [ebp - 0x44]
test edi, edi
js 0x419efd
sete al
test esi, esi
setne cl
or cl, al
je 0x419ef6
mov ebx, str.pipeid
push ebx
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push edi
push esi
push eax
push ebx
call fcn.0046e440
call fcn.00456060
mov edi, eax
movsx esi, byte [eax + 0xb]
test esi, esi
jns 0x4198d7
mov esi, dword [edi + 4]
mov edi, dword [edi]
test esi, esi
js 0x419efd
sete al
test edi, edi
setne cl
or cl, al
je 0x419ef6
mov ebx, str.version
push ebx
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push esi
push edi
push eax
push ebx
call fcn.0046e440
cmp byte [ebp - 0x39], 0
jns 0x419a4e
push dword [ebp - 0x44]
call fcn.004ec97e
add esp, 4
jmp 0x419a4e
mov byte [ebp - 0x11], bl
mov eax, edi
jmp 0x419832
mov dword [ebp - 0x5c], esp
xor ecx, ecx
dec ecx
lea eax, [ebp - 0x1c]
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
push eax
sub esp, 0x10
mov ebx, esp
mov esi, str.component_path
push esi
call fcn.00507c20
add esp, 4
lea edx, [ebp - 0x44]
mov ecx, edi
push eax
push esi
push edx
call fcn.0046dcb0
lea esi, [ebx + 4]
mov eax, str.component_name
push eax
call fcn.00507c20
add esp, 4
mov ecx, edi
push eax
mov eax, str.component_name
push eax
push esi
call fcn.004bc160
lea esi, [ebp - 0x1c]
mov dword [ebx], esi
lea edi, [ebp - 0x44]
mov dword [ebx + 0x10], edi
call fcn.00416f50
add esp, 0x14
mov esp, dword [ebp - 0x5c]
mov ecx, edi
call fcn.004b9720
xor eax, eax
dec eax
mov dword [edi + 0x24], eax
mov dword [edi + 0x20], eax
pcmpeqd xmm0, xmm0
movdqu xmmword [edi + 0x10], xmm0
movdqu xmmword [edi], xmm0
mov ecx, edi
push esi
call fcn.0046d1b0
mov esi, 0x568c4f
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
push eax
push esi
call fcn.0046dd40
pxor xmm0, xmm0
lea esi, [ebp - 0x50]
movq qword [esi], xmm0
mov dword [esi + 8], 0
push esi
push edi
call fcn.00538bb0
add esp, 8
movsx edi, byte [esi + 0xb]
test edi, edi
jns 0x4199fb
mov edi, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x50]
test edi, edi
js 0x419efd
sete al
test esi, esi
setne cl
or cl, al
je 0x419ef6
mov ebx, str.version
push ebx
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push edi
push esi
push eax
push ebx
call fcn.0046e440
cmp byte [ebp - 0x45], 0
jns 0x419a3e
push dword [ebp - 0x50]
call fcn.004ec97e
add esp, 4
lea ecx, [ebp - 0x44]
call fcn.0046d4c0
lea ecx, [ebp - 0x1c]
call fcn.004b9720
mov edi, dword [ebp + 0x1c]
mov esi, dword [ebp + 0x10]
cmp byte [esi + 0xc], 1
jne 0x419a9c
movsx edi, byte [esi + 0xb]
test edi, edi
jns 0x419a67
mov edi, dword [esi + 4]
mov esi, dword [esi]
test edi, edi
js 0x419efd
sete al
test esi, esi
setne cl
or cl, al
je 0x419ef6
mov ebx, str.lang
push ebx
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push edi
push esi
push eax
push ebx
call fcn.0046e440
mov edi, dword [ebp + 0x1c]
push edi
call fcn.00416f20
add esp, 4
test al, al
jne 0x419ab9
lea eax, [ebp - 0x44]
push 4
push eax
call fcn.0044e350
add esp, 8
jmp 0x419ad4
mov esi, str.component_name
push esi
call fcn.00507c20
add esp, 4
lea edx, [ebp - 0x44]
mov ecx, edi
push eax
push esi
push edx
call fcn.004bbf50
lea eax, [ebp - 0x44]
movsx esi, byte [eax + 0xb]
test esi, esi
cmovs esi, dword [eax + 4]
mov ebx, dword [eax]
cmovns ebx, eax
test esi, esi
js 0x419efd
sete al
test ebx, ebx
setne cl
or cl, al
je 0x419ef6
mov edi, str.producttype
push edi
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push esi
push ebx
push eax
push edi
call fcn.0046e440
cmp byte [ebp - 0x39], 0
jns 0x419b29
push dword [ebp - 0x44]
call fcn.004ec97e
add esp, 4
mov edi, dword [ebp + 0x1c]
mov ecx, edi
push str.autoupdaterequesttype
call fcn.004bbe00
test al, al
jne 0x419b7f
lea eax, [ebp - 0x3b]
mov byte [eax + 2], 9
mov ecx, str.automatic
lea edi, [ebp - 0x44]
cmp edi, ecx
seta dl
cmp eax, ecx
setbe al
or al, dl
je 0x419f0c
mov dword [ebp - 0x40], 0x6974616d
mov dword [ebp - 0x44], 0x6f747561
mov word [ebp - 0x3c], 0x63
mov al, 9
mov ecx, 0x6974616d
mov esi, 0x6f747561
jmp 0x419ba3
mov esi, str.autoupdaterequesttype
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
push eax
push esi
lea edi, [ebp - 0x44]
push edi
call fcn.004bbf50
mov al, byte [ebp - 0x39]
mov esi, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
test al, al
movzx ebx, al
cmovs ebx, ecx
cmovns esi, edi
test ebx, ebx
js 0x419efd
sete al
test esi, esi
setne cl
or cl, al
je 0x419ef6
mov edi, str.requesttype
push edi
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push ebx
push esi
push eax
push edi
call fcn.0046e440
cmp byte [ebp - 0x39], 0
jns 0x419bf1
push dword [ebp - 0x44]
call fcn.004ec97e
add esp, 4
mov esi, str.downloaddir
push esi
call fcn.00507c20
add esp, 4
mov edi, dword [ebp + 0x20]
mov ecx, edi
push dword [ebp + 8]
push eax
push esi
call fcn.0046e140
mov esi, str.installationdatadir
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
mov ebx, dword [ebp - 0x58]
push ebx
push eax
push esi
call fcn.0046e140
cmp byte [ebp - 0x51], 0
jne 0x419c63
mov esi, str.operadir
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
push dword [ebp - 0x60]
push eax
push esi
call fcn.0046e140
mov esi, str.installdir
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
push ebx
push eax
push esi
call fcn.0046e140
jmp 0x419cb5
mov esi, str.component_path
push esi
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x1c]
push eax
push esi
lea ebx, [ebp - 0x44]
push ebx
call fcn.0046dcb0
mov esi, str.installdir
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
push ebx
push eax
push esi
call fcn.0046e140
mov ecx, ebx
call fcn.004b9720
mov esi, str.productiscomponent
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
push eax
push esi
call fcn.0046dd40
xor eax, eax
dec eax
lea esi, [ebp - 0x44]
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov ecx, esi
push dword [ebp + 8]
call fcn.004b95c0
cmp byte [ebp + 0x24], 0
jne 0x419cf3
call fcn.0041f770
lea edi, [ebp - 0x1c]
mov ecx, eax
push edi
call fcn.0041de10
lea ecx, [ebp - 0x44]
push edi
call fcn.004b97a0
mov ecx, edi
call fcn.004b9720
mov edi, str.user_data_dir
push edi
call fcn.00507c20
add esp, 4
mov ebx, dword [ebp + 0x20]
mov ecx, ebx
push esi
push eax
push edi
call fcn.0046e140
mov esi, str.nometrics
push esi
call fcn.00507c20
add esp, 4
mov ecx, ebx
push eax
push esi
call fcn.0046dd40
mov esi, str.scheduledtask
push esi
call fcn.00507c20
add esp, 4
mov ecx, ebx
push eax
push esi
call fcn.0046dd40
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
cmp eax, ecx
je 0x419db9
sub ecx, eax
sar ecx, 2
imul ecx, ecx, 0xaaaaaaab
lea esi, [ebp - 0x1c]
push 1
push 0x566794
push ecx
push eax
push esi
call fcn.004af7b0
add esp, 0x14
movsx edi, byte [esi + 0xb]
test edi, edi
jns 0x419d76
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x1c]
test edi, edi
js 0x419efd
sete al
test esi, esi
setne cl
or cl, al
je 0x419ef6
mov ebx, str.installedextraapps
push ebx
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push edi
push esi
push eax
push ebx
call fcn.0046e440
cmp byte [ebp - 0x11], 0
jns 0x419db9
push dword [ebp - 0x1c]
call fcn.004ec97e
add esp, 4
lea ecx, [ebp - 0x44]
call fcn.004b9720
jmp 0x419ee4
lea eax, [ebp - 0x1c]
mov byte [eax + 0xb], bl
jmp 0x419e0b
push str.oauc_task_pipe
call fcn.00507c20
add esp, 4
cmp eax, 0x7ffffff8
jae 0x419f13
mov ebx, eax
cmp eax, 0xa
jbe 0x419dc6
mov esi, ebx
or esi, 7
inc esi
push esi
call fcn.004ec94e
add esp, 4
mov dword [ebp - 0x1c], eax
or esi, 0x80000000
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], ebx
lea esi, [eax + ebx]
mov ecx, str.oauc_task_pipe
cmp eax, ecx
seta dl
cmp esi, ecx
setbe cl
or cl, dl
je 0x419f0c
test ebx, ebx
je 0x419e38
push ebx
push str.oauc_task_pipe
push eax
call fcn.004f03c0
add esp, 0xc
mov byte [esi], 0
lea eax, [ebp - 0x1c]
lea esi, [ebp - 0x44]
push eax
push dword [ebp - 0x58]
push esi
call fcn.0044e210
add esp, 0xc
movsx edi, byte [esi + 0xb]
test edi, edi
jns 0x419e5c
mov edi, dword [ebp - 0x40]
mov esi, dword [ebp - 0x44]
test edi, edi
js 0x419efd
sete al
test esi, esi
setne cl
or cl, al
je 0x419ef6
mov ebx, str.pipeid
push ebx
call fcn.00507c20
add esp, 4
mov ecx, dword [ebp + 0x20]
push edi
push esi
push eax
push ebx
call fcn.0046e440
cmp byte [ebp - 0x39], 0
jns 0x419e9f
push dword [ebp - 0x44]
call fcn.004ec97e
add esp, 4
cmp byte [ebp - 0x11], 0
jns 0x419eb0
push dword [ebp - 0x1c]
call fcn.004ec97e
add esp, 4
mov esi, str.user_data_dir
push esi
call fcn.00507c20
add esp, 4
mov edi, dword [ebp + 0x20]
mov ecx, edi
push dword [ebp + 8]
push eax
push esi
call fcn.0046e140
mov esi, str.scheduledtask
push esi
call fcn.00507c20
add esp, 4
mov ecx, edi
push eax
push esi
call fcn.0046dd40
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004ecef0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push str....._third_partylibc_srcinclude_string_view:320:_assertion___len__0____s___nullptr_failed:_string_view::string_view__CharT___size_t_:_received_nullptr_n
jmp 0x419f02
push str....._third_partylibc_srcinclude_string_view:318:_assertion___len___static_cast_size_type__numeric_limits_difference_type_::max____failed:_string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type_n
push 0x565ab5
call fcn.0051c8d0
push str....._third_partylibc_srcinclude__stringchar_traits.h:145:_assertion__std::__is_pointer_in_range___s1____s1____n____s2__failed:_char_traits::copy:_source_and_destination_ranges_overlap_n
jmp 0x419f02
lea ecx, [ebp - 0x1c]
call fcn.0051bd70
int3