Function at 0x41b150
Capabilities:
Accept command line arguments
Create process on windows
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x70
push ebx
push esi
push edi
push 0x41e400
lea ecx, [ebp - 8]
lea eax, [ebp + 4]
add eax, 0xfffffffc
push ecx
push eax
mov dword [ebp - 4], eax
call fcn.00475ff0
push 0x418fb0
mov dword [ebp - 8], eax
call fcn.00593923
call fcn.0047ba20
push 0
call fcn.0047cb70
push 0
push 0
push 0x41dae0
call fcn.0047b090
call fcn.005ba900
push str.main_init
push 5
call fcn.00479a10
add esp, 0x28
mov dword [ebp - 0x1c], 1
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov edi, eax
lea eax, [ebp - 0x18]
push eax
push edi
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x41b1d2
mov esi, dword [ebp - 0x18]
jmp 0x41b22c
lea eax, [ebp - 0x14]
mov dword [ebp - 0x10], 0
push eax
lea eax, [ebp - 0x10]
mov dword [ebp - 0x14], 0
push eax
push 0
push 0
push edi
call fcn.00418d00
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
lea eax, [eax + esi*2]
add eax, eax
push eax
call fcn.00596eb3
mov ecx, eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x10]
mov dword [ebp - 0xc], ecx
push eax
lea eax, [ecx + esi*4]
push eax
push ecx
push edi
call fcn.00418d00
mov esi, dword [ebp - 0x10]
add esp, 0x2c
dec esi
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], esi
push esi
push str.main_argc__d
push 5
call fcn.00479a10
lea ebx, [esi*4 + 4]
add esp, 0xc
mov eax, ebx
mov dword [ebp - 0x10], ebx
xor edi, edi
mov dword [ebp - 0x14], eax
test esi, esi
jle 0x41b27e
mov eax, dword [ebp - 0xc]
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push dword [eax + edi*4]
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
inc edi
add ebx, eax
cmp edi, esi
jl 0x41b251
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push eax
call fcn.00596eb3
add esp, 4
mov edi, eax
xor ecx, ecx
mov dword [ebp - 0x10], edi
test esi, esi
jle 0x41b2d8
mov edi, dword [ebp - 0xc]
mov ecx, eax
mov edx, ecx
mov dword [ebp - 0x24], esi
sub edx, edi
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x14]
add ecx, ebx
push 0
push 0
sub eax, ebx
mov dword [edx + edi], ecx
push eax
push ecx
push 0xffffffffffffffff
push dword [edi]
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov edx, dword [ebp - 0x20]
lea edi, [edi + 4]
mov ecx, dword [ebp - 0x10]
add ebx, eax
sub esi, 1
jne 0x41b2a1
mov ecx, dword [ebp - 0x24]
mov edi, dword [ebp - 0x10]
cmp dword [ebp - 0x1c], 0
push dword [ebp - 0xc]
mov dword [edi + ecx*4], 0
je 0x41b2f0
call dword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x41b2f8
call fcn.00596eae
add esp, 4
mov ebx, dword [ebp - 4]
lea eax, [ebp - 0x14]
push 0x41e400
push eax
push ebx
call fcn.00475ff0
push eax
mov dword [ebp - 0x14], eax
call fcn.00487210
push dword [ebp - 0x14]
call fcn.00479480
mov eax, dword [ebp - 0x14]
push dword [eax]
push 0x664bf0
call fcn.004770b0
push 0x664bf0
call fcn.00478b80
mov eax, dword [ebp - 0x14]
push dword [eax]
push 0x664bec
call fcn.004770b0
push dword [0x664bf0]
push str.main_app_name__s
push 5
call fcn.00479a10
add esp, 0x34
push 0x5c4028
call dword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
push 0x8001
call dword [sym.imp.KERNEL32.dll_SetSearchPathMode]
call fcn.0041f240
push str.main_local_conf
push 5
call fcn.00479a10
mov eax, dword [0x668c10]
mov edx, dword [0x668c04]
mov ecx, dword [0x668be4]
mov dword [0x668c5c], eax
mov eax, dword [0x668bf0]
mov dword [0x668c58], eax
mov eax, dword [0x668c08]
mov dword [0x668c54], eax
mov eax, dword [0x668be8]
mov dword [0x668c44], eax
mov eax, dword [0x668c18]
mov dword [0x668c50], eax
mov eax, dword [0x668bf8]
mov dword [0x668c30], eax
mov eax, dword [0x668c00]
mov dword [0x668c4c], eax
mov eax, dword [0x668be0]
mov dword [0x668c38], eax
mov eax, dword [0x668c0c]
mov dword [0x668c40], eax
mov eax, dword [0x668bec]
push str.main_log_preinit
push 5
mov dword [0x668c64], edx
mov dword [0x668c60], ecx
mov dword [0x668c48], edx
mov dword [0x668c34], ecx
mov dword [0x668c3c], eax
call fcn.00479a10
call fcn.0041a890
push eax
push dword [ebp - 8]
call fcn.004770b0
push dword [ebp - 8]
call fcn.00477730
lea eax, [edi + 4]
add esp, 0x1c
mov esi, eax
mov dword [ebp - 0x20], eax
mov eax, dword [esi]
test eax, eax
je 0x41bfba
nop
cmp byte [eax], 0x2d
jne 0x41bfff
mov ecx, 0x5c4050
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41b470
test dl, dl
je 0x41b46c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41b470
add eax, 2
add ecx, 2
test dl, dl
jne 0x41b450
xor ecx, ecx
jmp 0x41b475
sbb ecx, ecx
or ecx, 1
lea eax, [esi + 4]
test ecx, ecx
cmovne eax, esi
mov esi, eax
mov edi, esi
je 0x41bfff
mov eax, dword [edi]
test eax, eax
je 0x41c400
mov edx, 0x5c4054
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b4b8
test bl, bl
je 0x41b4b4
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b4b8
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b498
xor ecx, ecx
jmp 0x41b4bd
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x41c400
mov edx, 0x5c4058
mov ecx, eax
nop dword [eax]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b4f0
test bl, bl
je 0x41b4ec
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b4f0
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b4d0
xor ecx, ecx
jmp 0x41b4f5
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x41c40a
mov edx, str.__uuid
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b524
test bl, bl
je 0x41b520
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b524
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b504
xor ecx, ecx
jmp 0x41b529
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x41c405
mov edx, str.__beta
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b558
test bl, bl
je 0x41b554
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b558
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b538
xor ecx, ecx
jmp 0x41b55d
sbb ecx, ecx
or ecx, 1
mov esi, edi
test ecx, ecx
je 0x41bfa9
mov edx, str.__opt_in
mov ecx, eax
nop
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b590
test bl, bl
je 0x41b58c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b590
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b570
xor ecx, ecx
jmp 0x41b595
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b5bb
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b6c], 1
jmp 0x41bfa9
mov edx, 0x5c4078
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b5e2
test bl, bl
je 0x41b5de
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b5e2
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b5c2
xor ecx, ecx
jmp 0x41b5e7
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b60d
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b78], 1
jmp 0x41bfa9
mov edx, 0x5c4084
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b634
test bl, bl
je 0x41b630
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b634
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b614
xor ecx, ecx
jmp 0x41b639
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b65f
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b70], 1
jmp 0x41bfa9
mov edx, str.__install_ui
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b686
test bl, bl
je 0x41b682
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b686
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b666
xor ecx, ecx
jmp 0x41b68b
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b6bb
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b70], 1
mov dword [0x664b84], 1
jmp 0x41bfa9
mov edx, str.__check_peer
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b6e2
test bl, bl
je 0x41b6de
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b6e2
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b6c2
xor ecx, ecx
jmp 0x41b6e7
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b70d
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b8c], 1
jmp 0x41bfa9
mov edx, str.__start_service
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b734
test bl, bl
je 0x41b730
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b734
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b714
xor ecx, ecx
jmp 0x41b739
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b75f
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b90], 1
jmp 0x41bfa9
mov edx, str.__stop_service
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b786
test bl, bl
je 0x41b782
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b786
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b766
xor ecx, ecx
jmp 0x41b78b
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b7b1
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b94], 1
jmp 0x41bfa9
mov edx, 0x5c40d0
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b7d8
test bl, bl
je 0x41b7d4
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b7d8
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b7b8
xor ecx, ecx
jmp 0x41b7dd
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b7f2
mov dword [0x664b88], 1
mov esi, edi
jmp 0x41bfa9
mov edx, 0x5c40e0
mov ecx, eax
nop dword [eax]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b820
test bl, bl
je 0x41b81c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b820
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b800
xor ecx, ecx
jmp 0x41b825
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b83a
mov dword [0x664b7c], 1
mov esi, edi
jmp 0x41bfa9
mov edx, str.__uninstall
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b861
test bl, bl
je 0x41b85d
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b861
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b841
xor ecx, ecx
jmp 0x41b866
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b88c
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x668c6c], eax
mov dword [0x664b74], 1
jmp 0x41bfa9
mov edx, str.__debug
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b8b3
test bl, bl
je 0x41b8af
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b8b3
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b893
xor ecx, ecx
jmp 0x41b8b8
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b8cd
mov dword [0x664b80], 1
mov esi, edi
jmp 0x41bfa9
mov edx, str.__dlg_pos
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41b8f4
test bl, bl
je 0x41b8f0
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41b8f4
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b8d4
xor ecx, ecx
jmp 0x41b8f9
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41b9e5
lea esi, [edi + 4]
mov edi, dword [esi]
test edi, edi
je 0x41c400
mov ecx, 0x5c410c
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41b935
test dl, dl
je 0x41b931
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41b935
add eax, 2
add ecx, 2
test dl, dl
jne 0x41b915
xor eax, eax
jmp 0x41b93a
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41b948
mov dword [0x65400c], eax
jmp 0x41bfa9
mov ecx, 0x5c4114
mov eax, edi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41b970
test dl, dl
je 0x41b96c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41b970
add eax, 2
add ecx, 2
test dl, dl
jne 0x41b950
xor eax, eax
jmp 0x41b975
sbb eax, eax
or eax, 1
mov ebx, dword [ebp - 4]
test eax, eax
jne 0x41b98b
mov dword [0x65400c], 1
jmp 0x41bfac
push fcn.00492070
lea eax, [ebp - 0x24]
push eax
push ebx
call fcn.00475ff0
push 1
push 0x5c411c
push edi
push eax
mov dword [ebp - 0x24], eax
call fcn.004921b0
mov edi, dword [eax]
push edi
call fcn.00491ec0
add esp, 0x20
cmp eax, 2
jne 0x41c400
push dword [edi]
mov dword [0x65400c], eax
call fcn.0058c640
push dword [edi + 4]
mov dword [0x664ba0], eax
call fcn.0058c640
add esp, 8
mov dword [0x664ba4], eax
jmp 0x41bfac
mov edx, str.__dlg_flavour
mov ecx, eax
nop dword [eax]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41ba10
test bl, bl
je 0x41ba0c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41ba10
add ecx, 2
add edx, 2
test bl, bl
jne 0x41b9f0
xor ecx, ecx
jmp 0x41ba15
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41baac
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov edx, 0x5c4130
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41ba52
test bl, bl
je 0x41ba4e
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41ba52
add ecx, 2
add edx, 2
test bl, bl
jne 0x41ba32
xor ecx, ecx
jmp 0x41ba57
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41ba67
xor eax, eax
mov dword [0x664b60], eax
jmp 0x41bfa9
mov ecx, 0x5c4138
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41ba90
test dl, dl
je 0x41ba8c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41ba90
add eax, 2
add ecx, 2
test dl, dl
jne 0x41ba70
xor eax, eax
jmp 0x41ba95
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41c400
mov eax, 1
mov dword [0x664b60], eax
jmp 0x41bfa9
mov edx, str.__dlg_txt_cult
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bad3
test bl, bl
je 0x41bacf
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bad3
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bab3
xor ecx, ecx
jmp 0x41bad8
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41baf4
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664ba8], eax
jmp 0x41bfa9
mov edx, str.__dlg_language
mov ecx, eax
nop dword [eax + eax]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bb20
test bl, bl
je 0x41bb1c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bb20
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bb00
xor ecx, ecx
jmp 0x41bb25
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x41badc
mov edx, str.__dlg_bg_color
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bb50
test bl, bl
je 0x41bb4c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bb50
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bb30
xor ecx, ecx
jmp 0x41bb55
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bb71
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bac], eax
jmp 0x41bfa9
mov edx, str.__dlg_btn_color
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bb98
test bl, bl
je 0x41bb94
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bb98
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bb78
xor ecx, ecx
jmp 0x41bb9d
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bbb9
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bb0], eax
jmp 0x41bfa9
mov edx, str.__dlg_txt_color
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bbe0
test bl, bl
je 0x41bbdc
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bbe0
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bbc0
xor ecx, ecx
jmp 0x41bbe5
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bc01
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bb4], eax
jmp 0x41bfa9
mov edx, str.__dlg_app_name_color
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bc28
test bl, bl
je 0x41bc24
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bc28
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bc08
xor ecx, ecx
jmp 0x41bc2d
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bc49
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bb8], eax
jmp 0x41bfa9
mov edx, str.__dlg_app_name
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bc70
test bl, bl
je 0x41bc6c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bc70
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bc50
xor ecx, ecx
jmp 0x41bc75
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bc91
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bbc], eax
jmp 0x41bfa9
mov edx, str.__dlg_tos_link
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bcb8
test bl, bl
je 0x41bcb4
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bcb8
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bc98
xor ecx, ecx
jmp 0x41bcbd
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bcd2
cmp dword [edi + 4], ecx
lea esi, [edi + 4]
je 0x41c400
jmp 0x41bfa9
mov edx, str.__dlg_logo_link
mov ecx, eax
nop dword [eax]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bd00
test bl, bl
je 0x41bcfc
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bd00
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bce0
xor ecx, ecx
jmp 0x41bd05
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bd21
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bc0], eax
jmp 0x41bfa9
mov edx, str.__dlg_benefit_txt
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bd48
test bl, bl
je 0x41bd44
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bd48
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bd28
xor ecx, ecx
jmp 0x41bd4d
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bd69
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bc4], eax
jmp 0x41bfa9
mov edx, str.__dlg_benefit
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bd90
test bl, bl
je 0x41bd8c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bd90
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bd70
xor ecx, ecx
jmp 0x41bd95
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bdb1
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bc8], eax
jmp 0x41bfa9
mov edx, str.__dlg_agree_btn
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bdd8
test bl, bl
je 0x41bdd4
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bdd8
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bdb8
xor ecx, ecx
jmp 0x41bddd
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bdf9
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bd8], eax
jmp 0x41bfa9
mov edx, str.__dlg_disagree_btn
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41be20
test bl, bl
je 0x41be1c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41be20
add ecx, 2
add edx, 2
test bl, bl
jne 0x41be00
xor ecx, ecx
jmp 0x41be25
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41be41
mov eax, dword [edi + 4]
lea esi, [edi + 4]
test eax, eax
je 0x41c400
mov dword [0x664bdc], eax
jmp 0x41bfa9
mov edx, str.__dlg_peer_txt
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41be68
test bl, bl
je 0x41be64
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41be68
add ecx, 2
add edx, 2
test bl, bl
jne 0x41be48
xor ecx, ecx
jmp 0x41be6d
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x41bde1
mov edx, str.__dlg_not_peer_txt
mov ecx, eax
nop dword [eax]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bea0
test bl, bl
je 0x41be9c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bea0
add ecx, 2
add edx, 2
test bl, bl
jne 0x41be80
xor ecx, ecx
jmp 0x41bea5
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x41be29
mov edx, 0x5c3fac
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bed0
test bl, bl
je 0x41becc
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bed0
add ecx, 2
add edx, 2
test bl, bl
jne 0x41beb0
xor ecx, ecx
jmp 0x41bed5
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41beea
mov dword [0x664bd0], 1
mov esi, edi
jmp 0x41bfa9
mov edx, str.__elevate
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x41bf11
test bl, bl
je 0x41bf0d
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x41bf11
add ecx, 2
add edx, 2
test bl, bl
jne 0x41bef1
xor ecx, ecx
jmp 0x41bf16
sbb ecx, ecx
or ecx, 1
test ecx, ecx
jne 0x41bf2b
mov dword [0x664bd4], 1
mov esi, edi
jmp 0x41bfa9
mov ecx, str.__campaign
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41bf50
test dl, dl
je 0x41bf4c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41bf50
add eax, 2
add ecx, 2
test dl, dl
jne 0x41bf30
xor eax, eax
jmp 0x41bf55
sbb eax, eax
or eax, 1
test eax, eax
jne 0x41c400
mov edx, dword [edi + 4]
lea esi, [edi + 4]
test edx, edx
je 0x41c400
mov ecx, edx
mov dword [0x664bcc], edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41bf76
sub ecx, edi
cmp ecx, 0x32
ja 0x41c3e7
push str._a_z0_9___
call fcn.00478650
push eax
push dword [0x664bcc]
call fcn.00477ec0
add esp, 0xc
test eax, eax
jne 0x41c3e1
mov ebx, dword [ebp - 4]
mov eax, dword [esi + 4]
add esi, 4
test eax, eax
jne 0x41b440
cmp dword [0x664b78], 0
jne 0x41c00a
cmp dword [0x664b70], 0
jne 0x41c00a
cmp dword [0x664b74], 0
jne 0x41c00a
cmp dword [0x664b8c], 0
jne 0x41c00a
cmp dword [0x664b6c], 0
jne 0x41c00a
cmp dword [0x664b90], 0
jne 0x41c00a
cmp dword [0x664b94], 0
je 0x41c3dc
jmp 0x41c00a
cmp dword [esi], 0
jne 0x41c40f
jmp 0x41bfba
push str.main_check_args
push 5
call fcn.00479a10
mov eax, dword [0x668c6c]
add esp, 8
test eax, eax
je 0x41c455
cmp byte [eax], 0
je 0x41c455
push str.win___a_z0_9_.__
call fcn.00478650
push eax
push dword [0x668c6c]
call fcn.00477ec0
add esp, 0xc
test eax, eax
jne 0x41c450
cmp dword [0x664bd4], eax
je 0x41c12b
call fcn.004872f0
test eax, eax
jne 0x41c12b
push str.spawing_net_updater_in_elevated_mode
push 5
call fcn.00479a10
push 0x3c
lea eax, [ebp - 0x70]
push 0
push eax
call fcn.00594c60
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x70], 0x3c
mov dword [ebp - 0x6c], 0x40
mov dword [ebp - 0x68], 0
push dword [eax]
mov dword [ebp - 0x64], 0x5c3fdc
push ebx
call fcn.004766b0
push dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x60], eax
call fcn.00490c30
push eax
push ebx
call fcn.004766b0
add esp, 0x28
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x70]
push eax
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 5
mov dword [ebp - 0x50], 0
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
push eax
call fcn.00590b90
add esp, 4
test eax, eax
jne 0x41c10c
push str.failed_running_elevated_mode__m
push 3
call fcn.00479a10
add esp, 8
or esi, 0xffffffff
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x38]
call fcn.0047e540
add esp, 4
mov esi, eax
push dword [ebp - 0x38]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x664bd0], 0
je 0x41c188
push str.running_in_fast_mode
push 5
call fcn.00479a10
add esp, 8
cmp dword [0x664b70], 0
je 0x41c2a2
cmp dword [0x664b7c], 0
je 0x41c2a2
push str.main_install_rmt
push 5
call fcn.00479a10
mov eax, dword [ebp - 8]
push str._temp
push dword [eax]
call fcn.00476fb0
add esp, 0x10
test eax, eax
jne 0x41c414
jmp 0x41c246
cmp dword [0x664b70], 0
je 0x41c2a2
cmp dword [0x664b84], 0
je 0x41c143
push fcn.00492070
lea eax, [ebp - 0x14]
push eax
push ebx
call fcn.00475ff0
mov eax, dword [ebp - 0x10]
push eax
push dword [ebp - 0x14]
call fcn.00491ee0
push str.spawing_net_updater_in_fast_mode
push 5
mov dword [ebp - 0x14], eax
call fcn.00479a10
push 0
push 0x5c3fac
push dword [ebp - 0x14]
call fcn.004918e0
mov eax, dword [ebp - 0x14]
add esp, 0x28
push 0
push 0
push 0
push 0
push 0
push 0
push dword [eax]
call fcn.00490c30
add esp, 4
push eax
call fcn.0047da50
push eax
call fcn.0047e540
mov esi, eax
add esp, 0x20
test esi, esi
je 0x41c430
cmp esi, 1
je 0x41c430
cmp esi, 2
je 0x41c430
push esi
push 0x5c42d8
push ebx
call fcn.00476350
push 1
push 0
push 0
push 1
push dword [eax]
push str.install_fast_failed
call fcn.00418ad0
add esp, 0x24
jmp 0x41c143
mov eax, dword [ebp - 8]
push dword [eax]
push 0x664be8
call fcn.004770b0
mov eax, dword [ebp - 8]
push str.luminati_temp
push dword [eax]
call fcn.00476fb0
add esp, 0x10
test eax, eax
jne 0x41c34c
push 0x5c2808
push str.luminati_temp_
push 0x664bec
call fcn.00477500
add esp, 0xc
mov eax, dword [0x664bf4]
test eax, eax
je 0x41c2a2
push eax
call fcn.00596eae
add esp, 4
mov dword [0x664bf4], 0
cmp dword [0x664b78], 0
je 0x41c36b
mov eax, dword [0x664c14]
test eax, eax
jne 0x41c2ef
push dword [0x668c6c]
push ebx
call fcn.00476420
push 0x5f
push 0x2e
push dword [eax]
call fcn.004777c0
push eax
call fcn.00477920
push eax
push str.luminati_net_updater
push 0x5c2c64
push 0x664c14
call fcn.00477140
add esp, 0x28
mov eax, dword [eax]
push eax
push ebx
call fcn.004766b0
add esp, 8
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x30], 0x41e4c0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
call dword [sym.imp.ADVAPI32.dll_StartServiceCtrlDispatcherW]
test eax, eax
jne 0x41c334
push eax
push eax
push eax
push 1
push eax
push str.start_invalid
call fcn.00418ad0
add esp, 0x18
push str.main_service
push 5
call fcn.00479a10
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 8]
push dword [eax]
push 0x664bec
call fcn.0041aac0
add esp, 8
test eax, eax
jne 0x41c449
jmp 0x41c286
push 1
push 4
call fcn.00596ea3
push str.main_install
push 5
mov esi, eax
call fcn.00479a10
push 0x419730
push esi
push 0x419760
mov dword [0x668c68], 0x5c4364
call fcn.0041c470
add esp, 0x1c
call fcn.00480b60
cmp dword [0x669020], 6
jl 0x41c3bc
push str.main_uninit
push 6
call fcn.00479a10
add esp, 8
call fcn.004858f0
call fcn.004812e0
call fcn.005b8770
call fcn.005bbdb0
mov eax, dword [0x664b98]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0041eb90
mov edx, dword [0x664bcc]
push edx
push str.invalid_campaign__s
push 2
call fcn.005975bc
add esp, 4
push eax
call fcn.0041a860
add esp, 0xc
call fcn.0041eb90
call fcn.0041d9c0
call fcn.0041f100
call fcn.0041eb90
push 0
push dword [0x664bec]
push str.rmt_install_wrong_path
call fcn.0041cb30
add esp, 0xc
push 2
call fcn.00597173
push 1
push 0
push 0
push str.install_fast_ok
call fcn.00418ec0
add esp, 0x10
push esi
call fcn.00597173
push 2
call fcn.00597173
mov eax, dword [0x668c6c]
push 1
push eax
push str.invalid_appid
call fcn.0041cb30
add esp, 0xc
push 3
call fcn.00597173
int3