Function at 0x4169f0
Capabilities:
Delete file
Enumerate files on windows
Get installed programs
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4408ac
mov eax, dword fs:[0]
push eax
sub esp, 0x3d4
mov eax, dword [0x45066c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, 0xf
xor esi, esi
mov ebx, ecx
mov dword [ebp - 0x260], edi
mov dword [ebp - 0x264], esi
mov byte [ebp - 0x274], 0
push 0x103
lea eax, [ebp - 0x117]
push esi
mov dword [ebp - 4], esi
push eax
mov byte [ebp - 0x118], 0
call fcn.0042c010
add esp, 0xc
lea ecx, [ebp - 0x3d4]
push ecx
push 0x20019
push esi
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallMaxthon2
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x416e51
mov ecx, dword [ebp - 0x3d4]
lea edx, [ebp - 0x3dc]
push edx
lea eax, [ebp - 0x118]
push eax
push esi
push esi
push str.InstallLocation
push ecx
mov dword [ebp - 0x3dc], 0x104
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov edx, dword [ebp - 0x3d4]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea eax, [ebp - 0x118]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416ac0
sub eax, edx
push eax
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x274]
call fcn.004099f0
mov dword [ebp - 0x228], edi
mov dword [ebp - 0x22c], esi
mov byte [ebp - 0x23c], 0
push 0xffffffffffffffff
push esi
lea ecx, [ebp - 0x274]
push ecx
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 1
call fcn.00409d40
push 0x1f
push str.SharedAccountConfigConfig.ini
lea ecx, [ebp - 0x23c]
call fcn.004099f0
mov eax, dword [ebp - 0x23c]
mov edi, 0x10
cmp dword [ebp - 0x228], edi
jae 0x416b33
lea eax, [ebp - 0x23c]
mov esi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push eax
push 0x445efc
push str.Running
push str.settings
call esi
mov eax, dword [ebp - 0x23c]
cmp dword [ebp - 0x228], edi
jae 0x416b5f
lea eax, [ebp - 0x23c]
push eax
push 0x445efc
push str.ConfirmExit
push str.Advanced
call esi
mov eax, dword [ebp - 0x23c]
cmp dword [ebp - 0x228], edi
jae 0x416b85
lea eax, [ebp - 0x23c]
push eax
push str.home
push str.StartPageType
push str.Startup
call esi
mov ecx, dword [ebp - 0x23c]
cmp dword [ebp - 0x228], edi
jae 0x416bab
lea ecx, [ebp - 0x23c]
cmp dword [ebx + 0x14], edi
jb 0x416bb4
mov eax, dword [ebx]
jmp 0x416bb6
mov eax, ebx
push ecx
push eax
push str.HomePage
push str.Startup
call esi
mov ebx, 0xf
mov dword [ebp - 0x244], ebx
mov dword [ebp - 0x248], 0
mov byte [ebp - 0x258], 0
push 0xffffffffffffffff
push 0
lea edx, [ebp - 0x274]
push edx
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 2
call fcn.00409d40
push 0x13
push str.SharedAccountData_
lea ecx, [ebp - 0x258]
call fcn.004099f0
mov eax, dword [ebp - 0x258]
cmp dword [ebp - 0x244], edi
jae 0x416c20
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x220]
push 0x104
push eax
call fcn.00425233
push 0x447394
lea ecx, [ebp - 0x220]
push 0x104
push ecx
call fcn.004254d8
add esp, 0x18
lea edx, [ebp - 0x3d0]
push edx
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov esi, eax
mov dword [ebp - 0x3d8], esi
cmp esi, 0xffffffff
jne 0x416ce0
cmp dword [ebp - 0x244], edi
jb 0x416c83
mov ecx, dword [ebp - 0x258]
push ecx
call fcn.004233f0
add esp, 4
xor esi, esi
mov dword [ebp - 0x244], ebx
mov dword [ebp - 0x248], esi
mov byte [ebp - 0x258], 0
cmp dword [ebp - 0x228], edi
jb 0x416caf
mov edx, dword [ebp - 0x23c]
push edx
call fcn.004233f0
add esp, 4
mov dword [ebp - 0x228], ebx
mov dword [ebp - 0x22c], esi
mov byte [ebp - 0x23c], 0
cmp dword [ebp - 0x260], edi
jb 0x416e69
mov eax, dword [ebp - 0x274]
push eax
jmp 0x416e61
test byte [ebp - 0x3d0], 0x10
jne 0x416da8
lea eax, [ebp - 0x3a4]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x416cf6
sub eax, edx
cmp eax, 0xa
jne 0x416da8
push eax
lea ecx, [ebp - 0x3a4]
push ecx
lea ecx, [ebp - 0x258]
call fcn.004099f0
mov ecx, dword [ebp - 0x248]
push 0xffffffffffffffff
add ecx, 0xfffffffd
lea esi, [ebp - 0x290]
lea edx, [ebp - 0x258]
call fcn.00406860
mov esi, dword [eax + 0x10]
mov ecx, esi
cmp ecx, esi
jae 0x416d40
mov ecx, esi
cmp esi, 3
jb 0x416d4c
mov ecx, 3
cmp dword [eax + 0x14], edi
jb 0x416d55
mov edx, dword [eax]
jmp 0x416d57
mov edx, eax
mov eax, ecx
mov ecx, 0x4475a0
call fcn.00404140
test eax, eax
jne 0x416d7b
cmp esi, 3
jae 0x416d71
or eax, 0xffffffff
jmp 0x416d79
xor eax, eax
cmp esi, 3
setne al
test eax, eax
sete bl
mov byte [ebp - 4], 2
cmp dword [ebp - 0x27c], edi
jb 0x416d99
mov edx, dword [ebp - 0x290]
push edx
call fcn.004233f0
add esp, 4
test bl, bl
jne 0x416dc0
mov esi, dword [ebp - 0x3d8]
mov ebx, 0xf
lea eax, [ebp - 0x3d0]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x416ce0
jmp 0x416de0
mov eax, dword [ebp - 0x258]
cmp dword [ebp - 0x244], edi
jae 0x416dd4
lea eax, [ebp - 0x258]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ebx, 0xf
cmp dword [ebp - 0x244], edi
jb 0x416df7
mov ecx, dword [ebp - 0x258]
push ecx
call fcn.004233f0
add esp, 4
xor esi, esi
mov dword [ebp - 0x244], ebx
mov dword [ebp - 0x248], esi
mov byte [ebp - 0x258], 0
cmp dword [ebp - 0x228], edi
jb 0x416e23
mov edx, dword [ebp - 0x23c]
push edx
call fcn.004233f0
add esp, 4
mov dword [ebp - 0x228], ebx
mov dword [ebp - 0x22c], esi
mov byte [ebp - 0x23c], 0
cmp dword [ebp - 0x260], edi
jb 0x416e4d
mov eax, dword [ebp - 0x274]
push eax
call fcn.004233f0
add esp, 4
mov al, 1
jmp 0x416e6b
cmp dword [ebp - 0x260], 0x10
jb 0x416e69
mov ecx, dword [ebp - 0x274]
push ecx
call fcn.004233f0
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042304b
mov esp, ebp
pop ebp
ret