Function at 0x42f500
Capabilities:
Get installed programs

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5be753
mov eax, dword fs:[0]
push eax
sub esp, 0x2e8
mov eax, dword [0x634274]
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 dword [ebp - 0x2d0], ecx
call fcn.004606d2
test al, al
je 0x42f553
loopne 0x42f596
or al, byte [eax + 0x34]
xchg edx, eax
lock sub dword [esp], edi
sub byte [edx], al
add eax, 0x496a0d7a
out 0x4b, al
outsb dx, byte [esi]
lcall 0x8400, 0x30f0de8
sal byte [ecx + ebx - 0x30], 0x6d
xlatb
call fcn.00460465
test al, al
je 0x42f575
shr byte [ebp - 0x29], 1
sbb bl, ah
mov ebp, 0x322ec084
xor edx, edx
sub al, 0x14
push 0xa98e06fe
xor bh, byte [eax + 0x14b07987]
call fcn.00460282
test al, al
je 0x42f592
invalid
lea eax, [ebp - 0x2c0]
push str.785183285769290910235846160602331639024622352343
push eax
call fcn.00470e6f
add esp, 8
mov dword [ebp - 4], 0
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0
mov dword [ebp - 0x2e0], 0
mov byte [ebp - 4], 1
mov dword [ebp - 0x2d4], 0
mov dword [ebp - 0x2dc], 0
mov dword [ebp - 0x2d8], 0
call fcn.00460420
test al, al
je 0x42f60c
invalid
imul esi, dword [ecx + edi*4 - 0x73], 0x7e
or byte [ebx], ah
xchg esi, eax
xchg ebx, eax
inc ebp
cdq
salc
jns 0x42f65a
leave
xor dword [edi], edi
inc edi
ret
call fcn.0046023d
test al, al
je 0x42f62b
loope 0x42f622
into
xor al, 0x75
mov ebp, 0xeaf4c750
into
dec edx
xor esp, dword [edi]
sub byte [edi - 0x72543f13], 0xe8
add al, 0xf
add eax, dword [eax]
call fcn.00460534
test al, al
je 0x42f649
std
pop esp
sub eax, 0x939c4041
mov edx, 0xbc17f570
jmp 0x42f6ab
call fcn.004604aa
test al, al
je 0x42f672
pop eax
test al, 0xe2
insd dword es:[edi], dx
sub edx, dword [ecx]
jnp 0x42f69c
sub eax, 0x1fd2a3de
pop edx
dec ecx
push cs
add al, byte [ebx + 0x16]
call 0xc054230e
ret 0x121c
lea eax, [ebp - 0x2d8]
push eax
push 0x109
push 0
push str.SoftwareMicrosoftWindowsCurrentVersionUninstall_
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x42f6be
mov ecx, dword [ebp - 0x2d0]
lea eax, [ebp - 0x2e8]
push eax
push dword [ebp - 0x2d8]
call fcn.004307d0
push dword [ebp - 0x2d8]
mov dword [ebp - 0x2d4], eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
sbb ch, bh
invalid
add bh, bh
mov ch, 0x28
std
invalid
call fcn.00460717
test al, al
je 0x42f6dd
mul byte [ebp + 0x37]
imul edx, ebp, 0x5fe05a5d
sbb ebp, dword [esp + ebp*8]
xor al, 0xc1
mov eax, 0x9b0dbf5c
inc ebp
inc edx
pop edx
call fcn.004603db
test al, al
je 0x42f6fe
stc
add eax, 0x8adfe3dd
pop esp
and ebx, 0xffffffee
mov edi, 0x53e7fbc8
xchg ebx, eax
salc
xlatb
cmovne edx, dword [esi + ecx*4 + 0x28e8f498]
adc dword [ebx], eax
add byte [eax + eax*8 - 0x38b3e38c], al
and ah, ah
std
and al, 0x8d
pop esi
add dword [edx], esi
lahf
not byte [edi + 0x52]
push ecx
salc
xor al, 0xa
cmc
cmp eax, 0x9f1f11ee
inc esi
cmc
wait
xor dword [ebx - 0x2d343], eax
inc dword [eax]
call fcn.0046082b
test al, al
je 0x42f723
dec esp
invalid
cmp dword [ebp - 0x2d4], 0
jne 0x42f775
lea eax, [ebp - 0x2d8]
push eax
push 9
push 0
push 0x5c8a60
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x42f775
mov ecx, dword [ebp - 0x2d0]
lea eax, [ebp - 0x2e8]
push eax
push dword [ebp - 0x2d8]
call fcn.004307d0
push dword [ebp - 0x2d8]
mov dword [ebp - 0x2d4], eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
invalid
call fcn.004601b3
test al, al
je 0x42f791
jns 0x42f75d
popfd
jmp 0x132262f
call fcn.004604aa
test al, al
je 0x42f7ba
adc dword [ebp + 0x3fcffc30], esi
push 0x10b1ddb6
fisub word [esi - 0x35abdeed]
add dword [edx - 0x2d], esp
sbb byte [edi], dh
mov bh, 0x56
push ds
invalid
cmp dword [ebp - 0x2d4], 0
je 0x430732
mov dword [ebp - 0x2cc], 0
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 0
push 0x20
push str.6823458154427478dc840736864a995e
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 2
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.0040e000
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42f84e
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0040aa40
push 0x20
push str.b8085c1f3ef9fbe9c5498ebdeadbaa1f
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.0040e000
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42f8b3
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0040aa40
push 0x20
push str.88c98d12ee7bc292e26c3edbef8f5582
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.0040e000
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42f918
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0040aa40
push 0x20
push str.e764c0a1dddcf49343c1db90ac8e0e96
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.0040e000
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42f97d
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0040aa40
push 0x20
push str.72913eeb22a8830ff1ad8d1624e19e7a
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.0040e000
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42f9e2
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0040aa40
push 0x20
push str.012d6475a10401cd067616c8cf75a9eb
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.0040e000
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42fa47
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0040aa40
push 0x20
push str.2d24377b4051a866894d29f89114e3dd
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.0040e000
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42faac
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0040aa40
push str.db64157f51f52f4501a1947b2d464932
lea ecx, [ebp - 0x260]
call fcn.0040e2d0
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42faf4
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0040aa40
push str.91d18a9220320bdcb94f4709f000911b
lea ecx, [ebp - 0x260]
call fcn.0040e2d0
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42fb3c
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0040aa40
call fcn.004607e6
test al, al
je 0x42fb57
sub edi, ebp
cli
mov al, byte [0x5705665b]
jl 0x42fbb0
cmc
adc al, 0x49
sbb eax, 0x68db7fd0
sub byte [esp + ebx*2 - 0x5f727300], cl
std
invalid
push str.07d78e3f6153f1865e9cb17cea594d3b
lea ecx, [ebp - 0x260]
call fcn.0040e2d0
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42fb9f
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0040aa40
push str.084c4b40e17e138280f970a8b3c733b1
lea ecx, [ebp - 0x260]
call fcn.0040e2d0
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x42fbe7
test dword [eax - 0x39000003], esp
inc ebp
cld
or eax, 0x348d8d50
std
invalid
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0040aa40
push str.9e29785bc19eb8c668c877546e60c70d
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.97faba2e8c18dcc449f24afb1e142630
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.8d2156a38e9fe959101b2492c278cabe
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.b5a8911148e6748536cbc0977a50e7ab
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.1fbf5c5cef0c56b2733e1415c090aada
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.47b4000bfef61469fb1f63f378f31c8a
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.febc98b82c994cbfc9a843fc6b466e68
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.53e2fab1dc05a95d4451581b06a77aa7
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.99bb039aedd9d23089ea7979effc8b0e
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
call fcn.004607e6
test al, al
je 0x42fddd
cmpsb byte [esi], byte es:[edi]
invalid
call fcn.004600e4
test al, al
je 0x42fdf7
iretd
call fcn.00460129
test al, al
je 0x42fe15
mov cl, 0x5f
push 0x5e590c8c
pushfd
mov bl, 0xf6
invalid
push str.13c844cc4bbc3eaace8a12a88e5359ad
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.f72cb604761d5dde42039fbd4ce0ea40
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.1be07c7f0e4eb051806223f7182600f3
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.1bab9332109a85de28377c6f51aed413
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.079f04e5b2e37b69b143a7b61cef6336
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.5a4eca2ed20fbb19c295d2cb46ce7360
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.73d0153e04ed9d6be342b210be6cae51
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.cc15a0198be20d32ad84414d57e59cd3
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1e
inc ebp
cld
push ds
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
push str.070252bcf627bc63edbdd478b4549783
lea ecx, [ebp - 0x248]
call fcn.0040e2d0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0x2cc]
call fcn.00423cf0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.0040c060
call fcn.00460579
test al, al
je 0x430014
jp 0x42ff9f
pop esi
leave
push 0x9c8d7580
cmp dword [eax + 0x78265ae2], esp
leave
and dword [edx], edx
mov eax, 0x2088276a
pop esi
jp 0x42fffd
call fcn.0046082b
adc cl, byte [eax]
add eax, dword [eax]
test al, al
je 0x430037
sub cl, byte [esi + 0x12e22d48]
push edi
mov edx, 0x112236cf
push eax
pop eax
or byte [0x5341cf01], ah
mov byte [edi + 0x7f7a6168], dh
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.00486960
add esp, 0xc
lea eax, [ebp - 0x218]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
call fcn.00460534
test al, al
je 0x43007e
invalid
inc esi
insd dword es:[edi], dx
invalid
call fcn.00460420
test al, al
je 0x43009c
dec edi
pop dword [edx + 0x30]
aaa
push ds
sbb eax, 0xb2d064ca
cmp edi, dword ds:[esi - 0x5f]
sal byte fs:[edx - 0x5e81c4c2], 1
push 0x77fa67cf
mov bl, 0xe8
add byte [edi], al
add eax, dword [eax]
call fcn.004607a1
test al, al
je 0x4300bc
xlatb
jp 0x43008f
inc ecx
sti
test byte [ebx], al
mov eax, dword [0x22873d4a]
and dh, byte [ebx]
xchg byte [ecx - 0x3c973b89], bl
jne 0x430051
cdq
lea eax, [ebp - 0x218]
mov ecx, eax
mov dword [ebp - 0x2d0], eax
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4300d0
sub ecx, edx
sar ecx, 1
cmp ecx, 3
jne 0x43024c
call fcn.00460579
test al, al
je 0x430104
arpl word [eax + 0x460fda15], ax
pushal
or byte [edi], dl
inc edi
dec edx
inc eax
jb 0x4300a9
or dh, byte [edx - 0x17695230]
dec eax
add al, byte [ebx]
add byte [eax + eax*8 - 0x673ae08c], al
cld
sub dword [ebx - 0x30], ebp
call fcn.00460351
test al, al
je 0x43012c
lds ebx, [eax - 0x2f94d604]
and esi, dword [edi + 0x11a28ba9]
push edi
test eax, 0x5711a28b
dec ebx
rol dword [esi], 0x91
add ch, byte [ebp + 0x58]
add eax, 0x5d9c3db1
xor byte [ebx - 0x7b], dl
sub esi, edi
ja 0x430115
call fcn.0046082b
cli
push es
add eax, dword [eax]
test al, al
je 0x43014d
enter 0xffffffffffffeb4a, 0xffffffffffffffc7
jmp 0xba2845a4
call fcn.0046082b
test al, al
je 0x43016e
cmp dword [esi + eax*4 + 0x15], esp
fsubr st(4), st(0)
sbb byte [ebx + 0x17], dl
test eax, 0x38c12745
out dx, al
ljmp 0xeac2
call fcn.00460282
test al, al
je 0x430195
dec edx
scasd eax, dword es:[edi]
loopne 0x4301f1
jne 0x430192
inc ecx
xchg ebp, eax
imul ecx, dword [edi + 0x47], 0xffffffe8
inc ebx
in eax, 0xf6
mov esi, 0x7e714079
inc ecx
fadd dword [edx]
or eax, dword [ebx + 0x467812df]
js 0x4301da
lcall 0xffff, 0xfd309d8b
mov ebx, dword [ebp - 0x2d0]
lea ecx, [ebp - 0x230]
push ebx
call fcn.004023b0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x2c0]
mov byte [ebp - 4], 0x20
push eax
lea ecx, [ebp - 0x230]
call fcn.004042c0
push 1
push 0x625fd4
lea ecx, [ebp - 0x230]
call fcn.00404190
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x430204
adc cl, byte [ebp - 0x22f7b]
call dword [eax - 0x73]
lea ebx, [eax]
std
invalid
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x2e8]
call fcn.0040ac30
add ebx, 8
mov esi, ebx
mov dword [ebp - 0x2d0], ebx
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x430212
mov eax, dword [ebp - 0x21c]
sub esi, ecx
sar esi, 1
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x430243
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00402610
cmp esi, 3
je 0x4300e8
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x2d0], eax
cmp eax, dword [ebp - 0x2e4]
je 0x430723
nop dword [eax]
nop dword [eax + eax]
cmp dword [ebp - 0x2dc], 0
jne 0x430723
call fcn.00460420
test al, al
je 0x43029c
jne 0x430303
mov ch, 0xab
aaa
dec ebx
fdivr dword [ebx + 0xf]
sub edi, eax
lodsb al, byte [esi]
mov ds, word [edi - 0xf]
push ds
or bl, byte [esi]
invalid
call fcn.0046023d
test al, al
je 0x4302bb
call 0x867b50d5
ja 0x4302a1
dec ebp
jl 0x4302ad
push ss
pop ebx
push cx
test byte [ebp + 0x7e], cl
jp 0x4302d2
and byte [eax + ebp*8 + 0x30274], ah
call fcn.00460534
test al, al
je 0x4302d9
mov bh, 0x83
mov esi, dword [edi - 0x52e5eee4]
or bl, byte [ebp - 0x77eb4cd6]
loop 0x43033d
call 0x95255f6f
call fcn.004604aa
test al, al
je 0x430302
dec edi
jbe 0x430310
in al, 3
invalid
mov esi, dword [ebp - 0x2d0]
cmp dword [esi + 0x14], 8
jb 0x430312
mov ch, 0x30
std
invalid
mov eax, dword [esi]
jmp 0x430314
mov eax, esi
push eax
lea ecx, [ebp - 0x2a8]
call fcn.004023b0
mov dword [ebp - 0x2f4], 0
mov dword [ebp - 0x2f0], 0
mov dword [ebp - 0x2ec], 0
cmp dword [ebp - 0x294], 8
add byte [ebx - 0x29343], al
dec dword [eax]
lea ecx, [ebp - 0x2f4]
lea eax, [ebp - 0x2a8]
mov byte [ebp - 4], 0x22
cmovae eax, dword [ebp - 0x2a8]
push ecx
push eax
call fcn.004668d1
mov ebx, dword [ebp - 0x2f4]
add esp, 8
mov dword [ebp - 0x2d4], ebx
cmp ebx, dword [ebp - 0x2f0]
je 0x4306e1
nop
cmp dword [ebp - 0x2dc], 0
jne 0x4306db
cmp dword [ebx + 0x14], 8
jb 0x430397
mov eax, dword [ebx]
jmp 0x430399
mov eax, ebx
push eax
lea ecx, [ebp - 0x260]
call fcn.004023b0
push 1
push 0
push 0x5c8ef8
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x23
call fcn.00404f70
cmp eax, 0xffffffff
jle 0x4306a4
push 0xffffffffffffffff
inc eax
lea ecx, [ebp - 0x260]
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.00403e60
push 1
push 0
push 0x5c675c
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 0x24
call fcn.00404f70
cmp eax, 0xffffffff
jle 0x430487
push eax
push 0
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x278]
call fcn.00403e60
mov esi, eax
lea eax, [ebp - 0x278]
cmp eax, esi
je 0x430465
mov eax, dword [ebp - 0x264]
cmp eax, 8
jb 0x43043c
inc eax
lea ecx, [ebp - 0x278]
push eax
push dword [ebp - 0x278]
call fcn.00402610
xor eax, eax
mov dword [ebp - 0x264], 7
push esi
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x268], 0
mov word [ebp - 0x278], ax
call fcn.00404120
mov eax, dword [ebp - 0x234]
mov byte [ebp - 4], 0x24
cmp eax, 8
jb 0x430487
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.00402610
call fcn.00460717
test al, al
je 0x4304a6
pop es
xchg edi, eax
ret
call fcn.004603db
test al, al
je 0x4304c7
scasb al, byte es:[edi]
or bh, byte [edx - 0x1dcf29a2]
retf
call fcn.0046082b
test al, al
je 0x4304ec
sub bl, bh
sbb byte [edi + ebp*8], ch
add byte [edi + 0x17], dl
cmovns ebp, edx
xchg esp, eax
cmc
das
cld
enter 0x4147, 0xffffffffffffff93
cdq
mov bh, 0x19
xchg ebx, eax
jmp 0x621ae15e
lea eax, [ebp - 0x278]
push eax
call fcn.0046e6ca
add esp, 4
mov dword [ebp - 0x27c], 7
xor eax, eax
mov dword [ebp - 0x280], 0
mov word [ebp - 0x290], ax
lea ecx, [ebp - 0x290]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.00402760
push 1
push 0x5c675c
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0x26
call fcn.00404190
push 0xc
push str.SmartCloudWB
lea ecx, [ebp - 0x290]
call fcn.00404190
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x230]
push eax
call fcn.0046d292
add esp, 8
mov ecx, dword [ebp - 0x2cc]
mov eax, ecx
mov esi, dword [ebp - 0x21c]
mov edi, dword [ebp - 0x230]
mov byte [ebp - 4], 0x27
cmp ecx, dword [ebp - 0x2c8]
je 0x430615
nop
cmp dword [eax + 0x14], 0x10
jb 0x43059a
mov edx, dword [eax]
jmp 0x43059c
mov edx, eax
cmp esi, 0x10
lea ecx, [ebp - 0x230]
cmovae ecx, edi
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4305c8
test bl, bl
je 0x4305c4
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4305c8
add ecx, 2
add edx, 2
test bl, bl
jne 0x4305a8
xor ecx, ecx
jmp 0x4305cd
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x4305de
add eax, 0x18
cmp eax, dword [ebp - 0x2c8]
jne 0x430590
jmp 0x430615
cmp dword [ebp - 0x264], 8
lea eax, [ebp - 0x278]
mov dword [ebp - 0x2dc], 1
cmovae eax, dword [ebp - 0x278]
push eax
call fcn.0040d490
mov ecx, eax
call fcn.00418c70
mov esi, dword [ebp - 0x21c]
mov edi, dword [ebp - 0x230]
cmp esi, 0x10
jb 0x43062a
lea eax, [esi + 1]
push eax
push edi
lea ecx, [ebp - 0x230]
call fcn.0040aa40
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
cmp eax, 8
jb 0x430663
inc eax
lea ecx, [ebp - 0x290]
push eax
push dword [ebp - 0x290]
call fcn.00402610
xor eax, eax
mov dword [ebp - 0x27c], 7
mov word [ebp - 0x290], ax
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x280], 0
cmp eax, 8
jb 0x43069e
inc eax
lea ecx, [ebp - 0x278]
push eax
push dword [ebp - 0x278]
call fcn.00402610
mov ebx, dword [ebp - 0x2d4]
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 0x22
cmp eax, 8
jb 0x4306c6
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.00402610
add ebx, 0x18
mov dword [ebp - 0x2d4], ebx
cmp ebx, dword [ebp - 0x2f0]
jne 0x430380
mov esi, dword [ebp - 0x2d0]
lea ecx, [ebp - 0x2f4]
call fcn.00406170
mov eax, dword [ebp - 0x294]
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x43070e
inc eax
lea ecx, [ebp - 0x2a8]
push eax
push dword [ebp - 0x2a8]
call fcn.00402610
add esi, 0x18
mov dword [ebp - 0x2d0], esi
cmp esi, dword [ebp - 0x2e4]
jne 0x430270
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 4], 1
call fcn.0040e470
call fcn.004601b3
test al, al
je 0x43074e
jae 0x430747
inc ebx
mov eax, 0xc9cfccda
loopne 0x43072d
xor ecx, dword [ecx - 0x13f4c948]
mov dl, 0xe8
push edi
std
add al, byte [eax]
call fcn.004604aa
test al, al
je 0x430777
add ah, byte [esi + 0x3a]
retf
lea ecx, [ebp - 0x2e8]
call fcn.00406170
mov ecx, dword [ebp - 0x2ac]
cmp ecx, 8
jb 0x4307a0
inc ecx
push ecx
push dword [ebp - 0x2c0]
lea ecx, [ebp - 0x2c0]
call fcn.00402610
mov eax, dword [ebp - 0x2dc]
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.00455afe
mov esp, ebp
pop ebp
ret