Function at 0x4676d2
Capabilities:
Get file system object information

Disassembly:
push 0x530
mov eax, 0x5ccfcd
call fcn.00506dfb
mov esi, ecx
lea eax, [esi - 0x2d0]
mov dword [ebp - 4], 1
neg esi
lea ecx, [ebp - 0x168]
sbb esi, esi
and esi, eax
call fcn.005584d3
push str.downloaded
lea edi, [esi + 0x20]
mov byte [ebp - 4], 2
lea eax, [esi + 0x18]
neg esi
push 0
push edi
sbb esi, esi
and esi, eax
push esi
push 0
push ecx
mov eax, esp
lea ecx, [ebp - 0x168]
mov dword [eax], str.IDX_DOWNLOAD
call fcn.00558fe0
test eax, eax
je 0x467739
lea ebx, [eax - 8]
jmp 0x46773b
xor ebx, ebx
lea ecx, [ebp - 0x53c]
mov dword [ebp - 0x440], ebx
call fcn.0042d04b
push str.body.download.list.downloaded
mov ecx, edi
mov byte [ebp - 4], 3
call fcn.00530748
test ebx, ebx
je 0x467d10
lea eax, [ebp - 0x53c]
push eax
push ecx
mov esi, esp
mov dword [ebp - 0x430], esi
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
push eax
call fcn.00412393
pop ecx
add eax, 0x10
mov ecx, 0x682dc4
mov dword [esi], eax
call fcn.004828f5
test al, al
je 0x467d10
call fcn.0041279d
push eax
lea ecx, [ebp - 0x43c]
call fcn.00411d94
push dword [ebp + 8]
lea eax, [ebp - 0x43c]
mov byte [ebp - 4], 4
push str.downloaded.item__s
push eax
call fcn.00412690
mov edi, dword [ebp - 0x43c]
lea esi, [ebx + 8]
mov eax, dword [esi]
add esp, 0xc
mov ecx, esi
push edi
call dword [eax + 0x34]
mov eax, dword [esi]
mov ecx, esi
push edi
call dword [eax + 0x2c]
mov eax, dword [esi]
mov ecx, esi
push dword [ebp + 0xc]
call dword [eax + 0x170]
call fcn.0041279d
push eax
lea ecx, [ebp - 0x428]
call fcn.00411d94
push dword [ebp + 8]
lea eax, [ebp - 0x428]
mov byte [ebp - 4], 5
push 0x622928
push eax
call fcn.00412690
add esp, 0xc
mov ecx, esi
push str.downloaded.item.icon
call fcn.00538e7a
mov ebx, eax
mov dword [ebp - 0x430], ebx
test ebx, ebx
je 0x467868
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x420]
push str.downloaded.item.icon
push eax
call fcn.0042e01c
add esp, 0xc
mov edx, dword [ebx]
mov ecx, ebx
push dword [eax]
mov byte [ebp - 4], 6
call dword [edx + 0x34]
mov ecx, dword [ebp - 0x420]
mov byte [ebp - 4], 5
lea ecx, [ecx - 0x10]
call fcn.00412ac4
push str.downloaded.item.name
mov ecx, esi
call fcn.00538e7a
mov ebx, eax
mov dword [ebp - 0x434], ebx
test ebx, ebx
je 0x4678ba
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x420]
push str.downloaded.item.name
push eax
call fcn.0042e01c
add esp, 0xc
mov edx, dword [ebx]
mov ecx, ebx
push dword [eax]
mov byte [ebp - 4], 7
call dword [edx + 0x34]
mov ecx, dword [ebp - 0x420]
mov byte [ebp - 4], 5
lea ecx, [ecx - 0x10]
call fcn.00412ac4
push str.downloaded.item.description
mov ecx, esi
call fcn.00538e7a
mov ebx, eax
test ebx, ebx
je 0x467906
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x420]
push str.downloaded.item.description
push eax
call fcn.0042e01c
add esp, 0xc
mov edx, dword [ebx]
mov ecx, ebx
push dword [eax]
mov byte [ebp - 4], 8
call dword [edx + 0x34]
mov ecx, dword [ebp - 0x420]
mov byte [ebp - 4], 5
lea ecx, [ecx - 0x10]
call fcn.00412ac4
push str.downloaded.item.downtime
mov ecx, esi
call fcn.00538e7a
mov dword [ebp - 0x42c], eax
test eax, eax
je 0x46795a
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x420]
push str.downloaded.item.downtime
push eax
call fcn.0042e01c
add esp, 0xc
mov ecx, dword [ebp - 0x42c]
push dword [eax]
mov byte [ebp - 4], 9
mov edx, dword [ecx]
call dword [edx + 0x34]
mov ecx, dword [ebp - 0x420]
mov byte [ebp - 4], 5
lea ecx, [ecx - 0x10]
call fcn.00412ac4
push str.downloaded.item.install
mov ecx, esi
call fcn.00538e7a
mov dword [ebp - 0x424], eax
test eax, eax
je 0x4679ae
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x420]
push str.downloaded.item.install
push eax
call fcn.0042e01c
add esp, 0xc
mov ecx, dword [ebp - 0x424]
push dword [eax]
mov byte [ebp - 4], 0xa
mov edx, dword [ecx]
call dword [edx + 0x34]
mov ecx, dword [ebp - 0x420]
mov byte [ebp - 4], 5
lea ecx, [ecx - 0x10]
call fcn.00412ac4
push str.downloaded.item.download
mov ecx, esi
call fcn.00538e7a
mov esi, eax
mov dword [ebp - 0x438], esi
test esi, esi
je 0x467a00
lea eax, [ebp - 0x428]
push eax
lea eax, [ebp - 0x420]
push str.downloaded.item.download
push eax
call fcn.0042e01c
add esp, 0xc
mov edx, dword [esi]
mov ecx, esi
push dword [eax]
mov byte [ebp - 4], 0xb
call dword [edx + 0x34]
mov ecx, dword [ebp - 0x420]
mov byte [ebp - 4], 5
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x434]
test ecx, ecx
je 0x467a15
mov eax, dword [ecx]
push dword [ebp - 0x520]
call dword [eax + 0x3c]
test ebx, ebx
je 0x467a45
mov eax, dword [ebx]
mov ecx, ebx
push dword [ebp - 0x4dc]
call dword [eax + 0x3c]
mov ecx, dword [ebp - 0x4d8]
mov eax, dword [ebx]
cmp dword [ecx - 0xc], 0
je 0x467a37
push ecx
jmp 0x467a3d
push dword [ebp - 0x4dc]
mov ecx, ebx
call dword [eax + 0x150]
mov ebx, dword [ebp - 0x42c]
test ebx, ebx
je 0x467bdc
mov ecx, dword [ebp - 0x424]
test ecx, ecx
je 0x467bdc
test esi, esi
je 0x467bdc
mov eax, dword [ecx]
push 1
call dword [eax + 0x180]
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax + 0x180]
mov ecx, dword [ebp - 0x424]
push dword [ebp + 0xc]
mov eax, dword [ecx]
call dword [eax + 0x170]
mov eax, dword [esi]
mov ecx, esi
push dword [ebp + 0xc]
call dword [eax + 0x170]
lea ecx, [ebp - 0x458]
call fcn.0042ca82
push ecx
mov esi, esp
mov dword [ebp - 0x434], esp
mov dword [ebp - 0x42c], esi
mov eax, dword [ebp - 0x518]
add eax, 0xfffffff0
mov byte [ebp - 4], 0xc
push eax
call fcn.00412393
add eax, 0x10
mov dword [esi], eax
mov ecx, dword [0x682eb4]
push esp
mov byte [ebp - 4], 0xd
call fcn.0048264a
lea eax, [ebp - 0x420]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0x458]
call fcn.00434114
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0xe
push eax
push ecx
mov esi, esp
mov dword [ebp - 0x434], esi
mov eax, dword [ebp - 0x420]
add eax, 0xfffffff0
push eax
call fcn.00412393
add eax, 0x10
pop ecx
mov dword [esi], eax
call fcn.00482487
pop ecx
pop ecx
test eax, eax
je 0x467b85
call fcn.0041279d
push eax
lea ecx, [ebp - 0x42c]
call fcn.00411d94
movzx eax, word [ebp - 0x14]
push eax
movzx eax, word [ebp - 0x16]
push eax
movzx eax, word [ebp - 0x18]
push eax
movzx eax, word [ebp - 0x1a]
push eax
movzx eax, word [ebp - 0x1e]
push eax
movzx eax, word [ebp - 0x20]
push eax
lea eax, [ebp - 0x42c]
mov byte [ebp - 4], 0xf
push str._d__d__d__d:_d:_d
push eax
call fcn.00412690
mov eax, dword [ebx]
add esp, 0x20
mov esi, dword [ebp - 0x42c]
mov ecx, ebx
push esi
call dword [eax + 0x3c]
lea ecx, [esi - 0x10]
call fcn.00412ac4
jmp 0x467bb1
mov ecx, dword [ebp - 0x424]
push 0
mov eax, dword [ecx]
call dword [eax + 0x180]
mov ecx, dword [ebp - 0x438]
push 1
mov eax, dword [ecx]
call dword [eax + 0x180]
mov eax, dword [ebx]
mov ecx, ebx
push str._g0W
call dword [eax + 0x3c]
mov ecx, dword [ebp - 0x420]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 5
call fcn.0042e60b
mov ecx, dword [ebp - 0x448]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ebx, dword [ebp - 0x430]
test ebx, ebx
je 0x467cf4
lea ecx, [ebp - 0x458]
call fcn.0042ca82
mov eax, dword [ebp - 0x518]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x430], esp
mov esi, esp
mov byte [ebp - 4], 0x10
push eax
mov dword [ebp - 0x438], esi
call fcn.00412393
add eax, 0x10
mov dword [esi], eax
mov ecx, dword [0x682eb4]
push esp
mov byte [ebp - 4], 0x11
call fcn.0048264a
lea eax, [ebp - 0x424]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x458]
call fcn.00434114
mov esi, 0x2b4
mov byte [ebp - 4], 0x12
push esi
lea eax, [ebp - 0x41c]
push 0
push eax
call fcn.0056b050
add esp, 0xc
lea eax, [ebp - 0x41c]
push 0x100
push esi
push eax
push 0
push dword [ebp - 0x424]
call dword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov eax, dword [ebp - 0x424]
cmp dword [eax - 4], 1
jle 0x467c98
push dword [eax - 0xc]
lea ecx, [ebp - 0x424]
call fcn.00412624
mov eax, dword [ebp - 0x424]
push 1
push dword [ebp - 0x41c]
push ecx
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [0x686d48]
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, eax
call fcn.0052ad45
cmp dword [ebp - 0x41c], 0
je 0x467ccd
push dword [ebp - 0x424]
mov ecx, ebx
call fcn.0053c258
mov ecx, dword [ebp - 0x424]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
lea ecx, [ebp - 0x458]
call fcn.0042e60b
mov ecx, dword [ebp - 0x448]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x428]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
lea ecx, [edi - 0x10]
call fcn.00412ac4
mov ebx, dword [ebp - 0x440]
lea ecx, [ebp - 0x53c]
call fcn.0042d806
lea ecx, [ebp - 0x168]
call fcn.00524f67
mov ecx, dword [ebp + 8]
add ecx, 0xfffffff0
call fcn.00412ac4
mov ecx, dword [ebp + 0xc]
add ecx, 0xfffffff0
call fcn.00412ac4
mov eax, ebx
call fcn.00506da5
ret 8