Function at 0x4c4374
Capabilities:
Get file system object information

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x11d
push 0
push 0
dec ecx
jne 0x4c437d
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0xc]
call fcn.00404fd8
xor eax, eax
push ebp
push 0x4c5f2e
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x7e8]
push eax
mov ecx, 1
mov edx, 0x4c5f48
mov eax, dword [ebp - 0xc]
call fcn.004e9a70
mov eax, dword [ebp - 0x7e8]
call fcn.00409478
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x7ec]
call fcn.00409428
mov eax, dword [ebp - 0x7ec]
call fcn.00404de8
mov ecx, eax
inc ecx
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405088
cmp dword [ebp - 0x10], 0x13
jne 0x4c4802
mov eax, dword [ebp - 0xc]
call fcn.00404de8
push eax
lea eax, [ebp - 0xc]
call fcn.00405040
mov edx, eax
lea eax, [ebp - 0x7d4]
pop ecx
call fcn.00407ad8
lea edx, [ebp - 0x7f0]
lea eax, [ebp - 0x7d4]
call fcn.004e9b78
mov eax, dword [ebp - 0x7f0]
mov edx, 0x4c5f54
call fcn.00404f34
je 0x4c4802
xor eax, eax
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov eax, dword [eax + 0x26c]
call fcn.00452c9c
dec eax
test eax, eax
jl 0x4c4533
inc eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov eax, dword [eax + 0x26c]
mov edx, dword [ebp - 0x1c]
call fcn.00453074
call fcn.00452148
test eax, eax
jne 0x4c4524
lea eax, [ebp - 0x7f4]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov eax, dword [eax + 0x26c]
mov edx, dword [ebp - 0x1c]
call fcn.00453074
mov eax, dword [eax + 8]
mov ecx, 1
mov edx, 0x4c5f48
call fcn.004e9a70
mov eax, dword [ebp - 0x7f4]
push eax
lea eax, [ebp - 0x7fc]
lea edx, [ebp - 0x694]
call fcn.00404d8c
mov eax, dword [ebp - 0x7fc]
lea edx, [ebp - 0x7f8]
call fcn.0040dc60
mov edx, dword [ebp - 0x7f8]
pop eax
call fcn.00404f34
jne 0x4c4524
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov eax, dword [eax + 0x26c]
mov edx, dword [ebp - 0x1c]
call fcn.00453074
mov dword [ebp - 0x64], eax
jmp 0x4c4533
inc dword [ebp - 0x1c]
dec dword [ebp - 0x84]
jne 0x4c447d
lea eax, [ebp - 0x800]
lea edx, [ebp - 0x7a8]
mov ecx, 0x104
call fcn.00404d98
push dword [ebp - 0x800]
push 0x4c5f48
mov eax, dword [ebp - 0x7b4]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x804]
call fcn.004e9a34
push dword [ebp - 0x804]
push 0x4c5f48
lea edx, [ebp - 0x808]
lea eax, [ebp - 0x7d4]
call fcn.004e9b78
push dword [ebp - 0x808]
push 0x4c5f48
lea eax, [ebp - 0x7c0]
call fcn.004c4320
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x80c]
call fcn.0040bd14
push dword [ebp - 0x80c]
lea eax, [ebp - 0x14]
mov edx, 7
call fcn.00404ea8
cmp dword [ebp - 0x64], 0
jne 0x4c4611
lea eax, [ebp - 0x814]
lea edx, [ebp - 0x694]
call fcn.00404d8c
mov eax, dword [ebp - 0x814]
lea edx, [ebp - 0x810]
call fcn.0040dc60
mov ecx, dword [ebp - 0x810]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov eax, dword [eax + 0x26c]
xor edx, edx
call fcn.00452d78
mov dword [ebp - 0x64], eax
xor edx, edx
mov eax, dword [ebp - 0x64]
call fcn.00451c1c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov eax, dword [eax + 0x26c]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x64]
call fcn.00452d58
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x7b4]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x818]
call fcn.00409428
mov edx, dword [ebp - 0x818]
mov eax, dword [0x58dd60]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, eax
mov eax, dword [ebp - 0x68]
call fcn.00451c74
cmp dword [0x58dd58], 0xffffffff
jle 0x4c4670
xor edx, edx
mov eax, dword [ebp - 0x64]
call fcn.004528cc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3a4]
mov eax, dword [eax + 0x26c]
xor edx, edx
call fcn.00453074
cmp eax, dword [ebp - 0x64]
jne 0x4c4695
xor edx, edx
mov eax, dword [ebp - 0x64]
call fcn.00451f30
lea eax, [ebp - 0x820]
lea edx, [ebp - 0x7a8]
mov ecx, 0x104
call fcn.00404d98
mov eax, dword [ebp - 0x820]
lea edx, [ebp - 0x81c]
call fcn.00409b34
mov edx, dword [ebp - 0x81c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x438]
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0xffffffff
jne 0x4c47f7
lea eax, [ebp - 0x828]
lea edx, [ebp - 0x7a8]
mov ecx, 0x104
call fcn.00404d98
mov eax, dword [ebp - 0x828]
lea edx, [ebp - 0x824]
call fcn.00409b34
mov edx, dword [ebp - 0x824]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x438]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x111
push 0x160
lea eax, [ebp - 0x594]
push eax
push 0x80
lea eax, [ebp - 0x7a8]
push eax
call sub.shell32.dll_SHGetFileInfoA
mov dl, 1
mov eax, dword [0x4255bc]
call fcn.0042d95c
mov dword [ebp - 0x6c], eax
mov edx, 0x10
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x10
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov edx, dword [ebp - 0x594]
mov eax, dword [ebp - 0x6c]
call fcn.0042dd2c
mov dl, 1
mov eax, dword [0x425478]
call fcn.0042bcac
mov dword [ebp - 0x70], eax
mov edx, 0x10
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x12
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
mov eax, dword [eax + 0x14]
mov edx, 0xff00ff
call fcn.00426c5c
mov dl, 1
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
mov ecx, 1
xor edx, edx
call fcn.00427214
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x408]
xor ecx, ecx
mov edx, dword [ebp - 0x70]
call fcn.004844a0
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x6c]
call fcn.00403cd8
mov eax, dword [ebp - 0x70]
call fcn.00403cd8
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x68]
call fcn.00451c1c
cmp dword [ebp - 0x10], 0x14
jne 0x4c483e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3b4]
mov edx, 0x4c5f68
call fcn.00477158
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3b0]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x64]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x400]
mov edx, 0x4c5f78
call fcn.00477158
cmp dword [ebp - 0x10], 0x12
jne 0x4c487b
lea edx, [ebp - 0x82c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3b4]
call fcn.00477128
mov eax, dword [ebp - 0x82c]
mov edx, 0x4c5f8c
call fcn.00404f34
jne 0x4c487b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x400]
mov edx, dword [ebp - 0xc]
call fcn.00477158
cmp dword [ebp - 0x10], 1
jne 0x4c4dd9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
call fcn.00477650
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
call fcn.00477650
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
call fcn.0045318c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
call fcn.00452cd4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x378]
call fcn.00477650
jmp 0x4c4bf7
lea eax, [ebp - 0x38]
push eax
mov ecx, 1
mov edx, 0x4c5f48
mov eax, dword [ebp - 0xc]
call fcn.004e9a70
mov eax, dword [ebp - 0x38]
call fcn.00404de8
mov ecx, eax
inc ecx
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405088
lea eax, [ebp - 0x3c]
push eax
mov ecx, 1
mov edx, 0x4c5f48
mov eax, dword [ebp - 0xc]
call fcn.004e9a70
mov eax, dword [ebp - 0x3c]
call fcn.00404de8
mov ecx, eax
inc ecx
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405088
lea eax, [ebp - 0x3c]
call fcn.00405040
mov edx, eax
lea eax, [ebp - 0x30]
mov ecx, 8
call fcn.00407ad8
lea eax, [ebp - 0x40]
push eax
mov ecx, 1
mov edx, 0x4c5f48
mov eax, dword [ebp - 0xc]
call fcn.004e9a70
mov eax, dword [ebp - 0x40]
call fcn.00404de8
mov ecx, eax
inc ecx
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405088
lea eax, [ebp - 0x44]
push eax
mov ecx, 1
mov edx, 0x4c5f48
mov eax, dword [ebp - 0xc]
call fcn.004e9a70
mov eax, dword [ebp - 0x44]
call fcn.00404de8
mov ecx, eax
inc ecx
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405088
lea eax, [ebp - 0x48]
push eax
mov ecx, 1
mov edx, 0x4c5f48
mov eax, dword [ebp - 0xc]
call fcn.004e9a70
mov eax, dword [ebp - 0x48]
call fcn.00404de8
mov ecx, eax
inc ecx
lea eax, [ebp - 0xc]
mov edx, 1
call fcn.00405088
mov eax, dword [ebp - 0x48]
call fcn.00409478
test eax, eax
jne 0x4c49f2
lea eax, [ebp - 0x34]
mov edx, 0x4c5f9c
call fcn.00404bc0
mov eax, dword [ebp - 0x48]
call fcn.00409478
cmp eax, 2
jne 0x4c4a0c
lea eax, [ebp - 0x34]
mov edx, 0x4c5fb4
call fcn.00404bc0
mov eax, dword [ebp - 0x48]
call fcn.00409478
cmp eax, 3
jne 0x4c4a26
lea eax, [ebp - 0x34]
mov edx, 0x4c5fdc
call fcn.00404bc0
mov eax, dword [ebp - 0x48]
call fcn.00409478
cmp eax, 4
jne 0x4c4a40
lea eax, [ebp - 0x34]
mov edx, 0x4c5ff8
call fcn.00404bc0
mov eax, dword [ebp - 0x48]
call fcn.00409478
cmp eax, 5
jne 0x4c4a5a
lea eax, [ebp - 0x34]
mov edx, 0x4c5fb4
call fcn.00404bc0
mov eax, dword [ebp - 0x48]
call fcn.00409478
cmp eax, 6
jne 0x4c4a74
lea eax, [ebp - 0x34]
mov edx, 0x4c5fb4
call fcn.00404bc0
xor eax, eax
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
call fcn.00452c9c
dec eax
test eax, eax
jl 0x4c4aeb
inc eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov edx, dword [ebp - 0x1c]
call fcn.00453074
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x34]
call fcn.00404f34
jne 0x4c4ae0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov edx, dword [ebp - 0x1c]
call fcn.00453074
mov dword [ebp - 0x64], eax
jmp 0x4c4aeb
inc dword [ebp - 0x1c]
dec dword [ebp - 0x84]
jne 0x4c4aa0
cmp dword [ebp - 0x64], 0
jne 0x4c4b38
mov eax, dword [ebp - 0x48]
call fcn.00409478
cmp eax, 3
jne 0x4c4b1c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov ecx, dword [ebp - 0x34]
xor edx, edx
call fcn.00452d68
mov dword [ebp - 0x64], eax
jmp 0x4c4b38
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov ecx, dword [ebp - 0x34]
xor edx, edx
call fcn.00452d78
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x64]
call fcn.00452d58
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x2c], 0
jne 0x4c4b63
cmp dword [ebp - 0x30], 0
jbe 0x4c4b7d
jmp 0x4c4b65
jle 0x4c4b7d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov ecx, 3
mov edx, dword [ebp - 0x64]
call fcn.004e9340
jmp 0x4c4b93
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov ecx, 2
mov edx, dword [ebp - 0x64]
call fcn.004e9340
mov eax, dword [ebp - 0x48]
call fcn.00409478
call fcn.004c42b0
mov edx, eax
mov eax, dword [ebp - 0x64]
call fcn.00451c1c
push dword [ebp - 0x38]
push 0x4c5f48
push dword [ebp - 0x3c]
push 0x4c5f48
push dword [ebp - 0x40]
push 0x4c5f48
push dword [ebp - 0x44]
push 0x4c5f48
push dword [ebp - 0x48]
lea eax, [ebp - 0x830]
mov edx, 9
call fcn.00404ea8
mov edx, dword [ebp - 0x830]
mov eax, dword [ebp - 0x64]
call fcn.004519e8
mov eax, dword [0x58c910]
mov eax, dword [eax]
call fcn.00497c10
mov eax, dword [ebp - 0xc]
call fcn.00404de8
test eax, eax
jg 0x4c48dc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov ecx, 0x4c6014
xor edx, edx
call fcn.00452d78
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov ecx, 0x4c6024
mov edx, dword [ebp - 0x64]
call fcn.00452d58
mov dword [ebp - 0x68], eax
mov edx, 6
mov eax, dword [ebp - 0x68]
call fcn.00451c1c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov ecx, 2
mov edx, dword [ebp - 0x68]
call fcn.004e9340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov ecx, 0x4c6034
mov edx, dword [ebp - 0x64]
call fcn.00452d58
mov dword [ebp - 0x68], eax
mov edx, 7
mov eax, dword [ebp - 0x68]
call fcn.00451c1c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov ecx, 2
mov edx, dword [ebp - 0x68]
call fcn.004e9340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov ecx, 0x4c6050
mov edx, dword [ebp - 0x64]
call fcn.00452d58
mov dword [ebp - 0x68], eax
mov edx, 8
mov eax, dword [ebp - 0x68]
call fcn.00451c1c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov ecx, 2
mov edx, dword [ebp - 0x68]
call fcn.004e9340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
call fcn.00452c9c
dec eax
test eax, eax
jl 0x4c4d3b
inc eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
mov edx, dword [ebp - 0x1c]
call fcn.00453074
mov dl, 1
call fcn.00451f30
inc dword [ebp - 0x1c]
dec dword [ebp - 0x84]
jne 0x4c4d12
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
xor edx, edx
call fcn.00453074
call fcn.00452838
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
call fcn.004531d8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
call fcn.00477658
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe84]
lea eax, [ebp - 0x834]
mov ecx, 0x4c6064
call fcn.00404e34
mov ecx, dword [ebp - 0x834]
mov dl, 1
mov eax, dword [0x440530]
call fcn.004405e0
mov dword [ebp - 0x20], eax
push 0
mov ecx, 0x4c607c
mov edx, 0x4c6090
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0x20]
call fcn.00403cd8
cmp dword [ebp - 0x10], 2
jne 0x4c5569
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x378]
call fcn.00477658
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
call fcn.00477650
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x420], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
call fcn.00477650
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045a9bc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045a99c
jmp 0x4c4e55
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2fc]
mov edx, 1
call fcn.004849a0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2fc]
call fcn.00484754
dec eax
jg 0x4c4e42
jmp 0x4c4e7b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov edx, 1
call fcn.004849a0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
call fcn.00484754
dec eax
jg 0x4c4e68
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x434]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045a84c
mov dword [ebp - 0x80], eax
mov edx, 0x4c60a4
mov eax, dword [ebp - 0x80]
call fcn.0045a2ec
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 8]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 8]
mov edx, 0x4c5f54
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 8]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x80]
call fcn.0045a4a4
mov cl, 1
mov edx, 3
mov eax, dword [ebp - 0x80]
call fcn.0045a434
mov eax, dword [0x58dd5c]
mov edx, dword [eax]
call dword [edx + 0x44]
xor eax, eax
mov dword [ebp - 0x78], eax
mov dl, 1
mov eax, dword [0x418164]
call fcn.00403ca8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
call fcn.00404de8
mov ecx, eax
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 0x10]
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0041c9ec
jmp 0x4c53a0
lea edx, [ebp - 0x408]
mov ecx, 0x140
mov eax, dword [ebp - 0x18]
call fcn.0041cbf8
lea eax, [ebp - 0x838]
lea edx, [ebp - 0x3dc]
mov ecx, 0x104
call fcn.00404d98
mov eax, dword [ebp - 0x838]
mov edx, 0x4c60b0
call fcn.00404f34
je 0x4c53a0
lea eax, [ebp - 0x83c]
lea edx, [ebp - 0x3dc]
mov ecx, 0x104
call fcn.00404d98
mov eax, dword [ebp - 0x83c]
mov edx, 0x4c60a4
call fcn.00404f34
je 0x4c53a0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045a84c
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x840]
lea edx, [ebp - 0x3dc]
mov ecx, 0x104
call fcn.00404d98
mov edx, dword [ebp - 0x840]
mov eax, dword [ebp - 0x80]
call fcn.0045a2ec
mov eax, dword [ebp - 0x3e8]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x844]
call fcn.004e9a34
mov edx, dword [ebp - 0x844]
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0x848]
lea eax, [ebp - 0x408]
call fcn.004e9b78
mov edx, dword [ebp - 0x848]
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea eax, [ebp - 0x3f4]
call fcn.004c4320
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x84c]
call fcn.0040bd14
mov edx, dword [ebp - 0x84c]
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x3e8]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x850]
call fcn.00409428
mov edx, dword [ebp - 0x850]
mov eax, dword [0x58dd5c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov ecx, eax
mov edx, 2
mov eax, dword [ebp - 0x80]
call fcn.0045a4a4
lea eax, [ebp - 0x858]
lea edx, [ebp - 0x3dc]
mov ecx, 0x104
call fcn.00404d98
mov eax, dword [ebp - 0x858]
lea edx, [ebp - 0x854]
call fcn.00408e6c
mov eax, dword [ebp - 0x854]
mov edx, 0x4c60bc
call fcn.00404f34
jne 0x4c50d7
mov dword [ebp - 0x78], 0xffffffff
lea edx, [ebp - 0x85c]
lea eax, [ebp - 0x408]
call fcn.004e9b78
mov eax, dword [ebp - 0x85c]
mov edx, 0x4c5f54
call fcn.00404f34
jne 0x4c510b
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x80]
call fcn.0045a4a4
jmp 0x4c53a0
lea eax, [ebp - 0x864]
lea edx, [ebp - 0x3dc]
mov ecx, 0x104
call fcn.00404d98
mov eax, dword [ebp - 0x864]
lea edx, [ebp - 0x860]
call fcn.00409b34
mov edx, dword [ebp - 0x860]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x434]
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0xffffffff
jne 0x4c5390
lea eax, [ebp - 0x86c]
lea edx, [ebp - 0x3dc]
mov ecx, 0x104
call fcn.00404d98
mov eax, dword [ebp - 0x86c]
lea edx, [ebp - 0x868]
call fcn.00409b34
mov edx, dword [ebp - 0x868]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x434]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
cmp byte [eax + 0x215], 3
jne 0x4c5288
push 0x111
push 0x160
lea eax, [ebp - 0x594]
push eax
push 0x80
lea eax, [ebp - 0x3dc]
push eax
call sub.shell32.dll_SHGetFileInfoA
mov dl, 1
mov eax, dword [0x4255bc]
call fcn.0042d95c
mov dword [ebp - 0x6c], eax
mov edx, 0x10
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x10
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov edx, dword [ebp - 0x594]
mov eax, dword [ebp - 0x6c]
call fcn.0042dd2c
mov dl, 1
mov eax, dword [0x425478]
call fcn.0042bcac
mov dword [ebp - 0x70], eax
mov edx, 0x10
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x12
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
mov eax, dword [eax + 0x14]
mov edx, 0xff00ff
call fcn.00426c5c
mov dl, 1
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
mov ecx, 1
xor edx, edx
call fcn.00427214
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2fc]
xor ecx, ecx
mov edx, dword [ebp - 0x70]
call fcn.004844a0
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x6c]
call fcn.00403cd8
mov eax, dword [ebp - 0x70]
call fcn.00403cd8
jmp 0x4c5393
push 0x110
push 0x160
lea eax, [ebp - 0x594]
push eax
push 0x80
lea eax, [ebp - 0x3dc]
push eax
call sub.shell32.dll_SHGetFileInfoA
mov dl, 1
mov eax, dword [0x4255bc]
call fcn.0042d95c
mov dword [ebp - 0x6c], eax
mov edx, dword [ebp - 0x594]
mov eax, dword [ebp - 0x6c]
call fcn.0042dd2c
mov dl, 1
mov eax, dword [0x425478]
call fcn.0042bcac
mov dword [ebp - 0x70], eax
mov edx, 0x36
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x36
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
mov eax, dword [eax + 0x14]
mov edx, 0xff00ff
call fcn.00426c5c
mov dl, 1
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x70]
mov edx, dword [eax]
call dword [edx + 0x20]
mov ebx, eax
sar ebx, 1
jns 0x4c5324
adc ebx, 0
mov eax, dword [ebp - 0x6c]
mov edx, dword [eax]
call dword [edx + 0x20]
sar eax, 1
jns 0x4c5333
adc eax, 0
sub ebx, eax
push ebx
mov eax, dword [ebp - 0x70]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov ebx, eax
sar ebx, 1
jns 0x4c5347
adc ebx, 0
mov eax, dword [ebp - 0x6c]
mov edx, dword [eax]
call dword [edx + 0x2c]
sar eax, 1
jns 0x4c5356
adc eax, 0
sub ebx, eax
push ebx
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
pop edx
pop ecx
call fcn.00427214
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
xor ecx, ecx
mov edx, dword [ebp - 0x70]
call fcn.004844a0
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x6c]
call fcn.00403cd8
mov eax, dword [ebp - 0x70]
call fcn.00403cd8
jmp 0x4c5393
inc dword [ebp - 0x74]
mov ecx, dword [ebp - 0x74]
xor edx, edx
mov eax, dword [ebp - 0x80]
call fcn.0045a4a4
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov eax, dword [ebp - 0x18]
call fcn.0041c9cc
cmp edx, dword [esp + 4]
jne 0x4c53c4
cmp eax, dword [esp]
pop edx
pop eax
jb 0x4c4f47
jmp 0x4c53cc
pop edx
pop eax
jl 0x4c4f47
mov eax, dword [ebp - 0x18]
call fcn.00403cd8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
call fcn.0045dd18
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045ab98
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
call fcn.00477658
cmp dword [ebp - 0x78], 0
je 0x4c555a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x35c]
cmp byte [eax + 0x38], 0
je 0x4c555a
lea eax, [ebp - 0x870]
push eax
lea edx, [ebp - 0x874]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f0]
call fcn.00477128
mov eax, dword [ebp - 0x874]
xor ecx, ecx
mov edx, 0x4c60d0
call fcn.0043bd84
mov edx, dword [ebp - 0x870]
lea eax, [ebp - 0x14]
mov ecx, 0x4c60dc
call fcn.00404e34
lea eax, [ebp - 0x878]
push eax
xor ecx, ecx
mov edx, 0x4c60ec
mov eax, dword [ebp - 0x14]
call fcn.0043bd84
mov edx, dword [ebp - 0x878]
lea eax, [ebp - 0x14]
call fcn.00404bc0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe8c]
lea eax, [ebp - 0x87c]
mov ecx, dword [ebp - 0x14]
call fcn.00404e34
mov eax, dword [ebp - 0x87c]
call fcn.004e9824
test eax, eax
jbe 0x4c5513
mov dl, 1
mov eax, dword [0x418164]
call fcn.00403ca8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe8c]
lea eax, [ebp - 0x880]
mov ecx, dword [ebp - 0x14]
call fcn.00404e34
mov edx, dword [ebp - 0x880]
mov eax, dword [ebp - 0x18]
call fcn.0041d200
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx]
mov ecx, eax
mov eax, dword [ebp - 0x18]
mov edx, dword [eax + 4]
lea eax, [ebp - 0xc]
call fcn.00404c18
mov eax, dword [ebp - 0x18]
call fcn.00403cd8
mov dword [ebp - 0x10], 0xd
jmp 0x4c554a
lea edx, [ebp - 0x884]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f0]
call fcn.00477128
lea eax, [ebp - 0x884]
mov edx, 0x4c60f8
call fcn.00404df0
mov ecx, dword [ebp - 0x884]
mov edx, 0xd
mov eax, dword [ebp - 8]
call fcn.004c3df8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f4]
call fcn.00477658
jmp 0x4c5569
mov dword [ebp - 0x10], 0xd
lea eax, [ebp - 0xc]
call fcn.00404b28
cmp dword [ebp - 0x10], 0xd
jne 0x4c58d6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x35c]
cmp byte [eax + 0x38], 0
je 0x4c5e56
cmp dword [ebp - 0xc], 0
je 0x4c5e56
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov eax, dword [eax + 0xe8c]
call fcn.00404fe8
push eax
call sub.IMAGEHLP.DLL_MakeSureDirectoryPathExists
lea eax, [ebp - 0x888]
push eax
lea edx, [ebp - 0x88c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f0]
call fcn.00477128
mov eax, dword [ebp - 0x88c]
xor ecx, ecx
mov edx, 0x4c60d0
call fcn.0043bd84
mov edx, dword [ebp - 0x888]
lea eax, [ebp - 0x14]
mov ecx, 0x4c60dc
call fcn.00404e34
lea eax, [ebp - 0x890]
push eax
xor ecx, ecx
mov edx, 0x4c60ec
mov eax, dword [ebp - 0x14]
call fcn.0043bd84
mov edx, dword [ebp - 0x890]
lea eax, [ebp - 0x14]
call fcn.00404bc0
mov dl, 1
mov eax, dword [0x418164]
call fcn.00403ca8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
call fcn.00404de8
mov ecx, eax
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe8c]
lea eax, [ebp - 0x894]
mov ecx, dword [ebp - 0x14]
call fcn.00404e34
mov edx, dword [ebp - 0x894]
mov eax, dword [ebp - 0x18]
call fcn.0041d12c
mov eax, dword [ebp - 0x18]
call fcn.00403cd8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045a9bc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x374]
mov eax, dword [eax + 0x26c]
call fcn.00452c9c
mov edx, dword [ebp - 4]
mov dword [edx + 0x410], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x414], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045a8a8
dec eax
test eax, eax
jl 0x4c58b4
inc eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x1c]
inc eax
mov edx, dword [ebp - 4]
mov dword [edx + 0x414], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f4]
mov edx, dword [eax]
call dword [edx + 0x80]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
mov edx, dword [ebp - 0x1c]
call fcn.0045a8d8
cmp dword [eax + 0x10], 0
je 0x4c58a5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
mov edx, dword [ebp - 0x1c]
call fcn.0045a8d8
mov eax, dword [eax + 0x24]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe8c]
lea eax, [ebp - 0x898]
mov ecx, dword [ebp - 0x14]
call fcn.00404e34
mov eax, dword [ebp - 0x898]
pop edx
call fcn.004c2798
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
je 0x4c58a5
mov dl, 1
mov eax, dword [0x425478]
call fcn.0042bcac
mov dword [ebp - 0x4c], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x7c]
call fcn.00403cd8
xor eax, eax
push ebp
push 0x4c5893
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x425478]
call fcn.0042bcac
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov edx, dword [eax + 0x34]
sub edx, 4
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov edx, dword [eax + 0x30]
sub edx, 4
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebp - 0x54]
call fcn.0042c27c
lea edx, [ebp - 0x8a8]
call fcn.00427870
lea eax, [ebp - 0x8a8]
push eax
mov eax, dword [ebp - 0x54]
call fcn.0042c27c
mov ecx, dword [ebp - 0x4c]
pop edx
call fcn.004274f8
mov dl, 1
mov eax, dword [0x425478]
call fcn.0042bcac
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov edx, dword [eax + 0x34]
mov eax, dword [ebp - 0x50]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
mov edx, dword [eax + 0x30]
mov eax, dword [ebp - 0x50]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x50]
call fcn.0042c27c
mov ecx, 2
mov edx, 2
call fcn.00427214
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x364]
xor ecx, ecx
mov edx, dword [ebp - 0x50]
call fcn.004844a0
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
mov edx, dword [ebp - 0x1c]
call fcn.0045a8d8
xor edx, edx
pop ecx
call fcn.0045a4a4
mov eax, dword [ebp - 0x50]
call fcn.00403cd8
mov eax, dword [ebp - 0x54]
call fcn.00403cd8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4c589d
mov eax, dword [ebp - 0x4c]
call fcn.00403cd8
inc dword [ebp - 0x1c]
dec dword [ebp - 0x84]
jne 0x4c56cc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x404]
mov eax, dword [eax + 0x22c]
call fcn.0045ab98
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f4]
call fcn.00477650
cmp dword [ebp - 0x10], 3
jne 0x4c59c3
lea edx, [ebp - 0x8ac]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3b4]
call fcn.00477128
mov eax, dword [ebp - 0x8ac]
mov edx, 0x4c5f68
call fcn.00404f34
jne 0x4c5938
lea edx, [ebp - 0x8b0]
mov eax, dword [ebp - 0xc]
call fcn.0040dc0c
lea eax, [ebp - 0x8b0]
mov edx, 0x4c610c
call fcn.00404df0
mov edx, dword [ebp - 0x8b0]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3b0]
call fcn.00477158
lea edx, [ebp - 0x8b4]
mov eax, dword [ebp - 0xc]
call fcn.0040dc60
mov edx, dword [ebp - 0x8b4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f0]
call fcn.00477158
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe84]
lea eax, [ebp - 0x8b8]
mov ecx, 0x4c6064
call fcn.00404e34
mov ecx, dword [ebp - 0x8b8]
mov dl, 1
mov eax, dword [0x440530]
call fcn.004405e0
mov dword [ebp - 0x20], eax
lea edx, [ebp - 0x8bc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3f0]
call fcn.00477128
mov eax, dword [ebp - 0x8bc]
push eax
mov ecx, 0x4c607c
mov edx, 0x4c6090
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax]
call dword [ebx + 4]
mov eax, dword [ebp - 0x20]
call fcn.00403cd8
cmp dword [ebp - 0x10], 0xe
jne 0x4c5d2e
mov dl, 1
mov eax, dword [0x418164]
call fcn.00403ca8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
call fcn.00404de8
push eax
lea eax, [ebp - 0xc]
call fcn.00405040
mov edx, eax
mov eax, dword [ebp - 0x18]
pop ecx
mov ebx, dword [eax]
call dword [ebx + 0x10]
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0041c9ec
jmp 0x4c5d02
lea edx, [ebp - 0x2c8]
mov ecx, 0x240
mov eax, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov dl, 1
mov eax, dword [0x4e8edc]
call fcn.00403ca8
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x8c4]
lea edx, [ebp - 0x29c]
mov ecx, 0x104
call fcn.00404d98
mov ecx, dword [ebp - 0x8c4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe8c]
lea eax, [ebp - 0x8c0]
call fcn.00404e34
mov edx, dword [ebp - 0x8c0]
mov eax, dword [ebp - 0x24]
add eax, 0x208
mov ecx, 0xff
call fcn.00404dc4
lea eax, [ebp - 0x8cc]
lea edx, [ebp - 0x29c]
mov ecx, 0x104
call fcn.00404d98
mov ecx, dword [ebp - 0x8cc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x448]
mov edx, dword [eax + 0xe88]
lea eax, [ebp - 0x8c8]
call fcn.00404e34
mov edx, dword [ebp - 0x8c8]
mov eax, dword [ebp - 0x24]
add eax, 0x108
mov ecx, 0xff
call fcn.00404dc4
lea eax, [ebp - 0x8d0]
lea edx, [ebp - 0x188]
call fcn.00404d8c
lea eax, [ebp - 0x8d0]
push eax
lea eax, [ebp - 0x8d4]
lea edx, [ebp - 0x29c]
mov ecx, 0x104
call fcn.00404d98
mov edx, dword [ebp - 0x8d4]
pop eax
call fcn.00404df0
mov edx, dword [ebp - 0x8d0]
mov eax, dword [ebp - 0x24]
add eax, 8
mov ecx, 0xff
call fcn.00404dc4
mov eax, dword [ebp - 0x2a8]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x8d8]
call fcn.004e9a34
mov edx, dword [ebp - 0x8d8]
mov eax, dword [ebp - 0x24]
add eax, 0x344
mov ecx, 0xff
call fcn.00404dc4
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
mov dword [eax + 0x444], edx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x428]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x37c]
mov eax, dword [eax + 0x26c]
xor ecx, ecx
call fcn.00452d58
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x64]
mov dword [eax + 0x33c], edx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x64]
call fcn.00451a7c
lea eax, [ebp - 0x8e0]
mov edx, dword [ebp - 0x24]
add edx, 8
call fcn.00404d8c
mov eax, dword [ebp - 0x8e0]
lea edx, [ebp - 0x8dc]
call fcn.00409b34
mov edx, dword [ebp - 0x8dc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x438]
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0xffffffff
jne 0x4c5cf7
lea eax, [ebp - 0x8e8]
mov edx, dword [ebp - 0x24]
add edx, 8
call fcn.00404d8c
mov eax, dword [ebp - 0x8e8]
lea edx, [ebp - 0x8e4]
call fcn.00409b34
mov edx, dword [ebp - 0x8e4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x438]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x111
push 0x160
lea eax, [ebp - 0x594]
push eax
push 0x80
lea eax, [ebp - 0x8ec]
mov edx, dword [ebp - 0x24]
add edx, 8
call fcn.00404d8c
mov eax, dword [ebp - 0x8ec]
call fcn.00404fe8
push eax
call sub.shell32.dll_SHGetFileInfoA
mov dl, 1
mov eax, dword [0x4255bc]
call fcn.0042d95c
mov dword [ebp - 0x6c], eax
mov edx, 0x10
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x10
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov edx, dword [ebp - 0x594]
mov eax, dword [ebp - 0x6c]
call fcn.0042dd2c
mov dl, 1
mov eax, dword [0x425478]
call fcn.0042bcac
mov dword [ebp - 0x70], eax
mov edx, 0x10
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x12
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
mov eax, dword [eax + 0x14]
mov edx, 0xff00ff
call fcn.00426c5c
mov dl, 1
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x70]
call fcn.0042c27c
mov ecx, 1
xor edx, edx
call fcn.00427214
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x408]
xor ecx, ecx
mov edx, dword [ebp - 0x70]
call fcn.004844a0
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x6c]
call fcn.00403cd8
mov eax, dword [ebp - 0x70]
call fcn.00403cd8
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x64]
call fcn.00451c1c
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov eax, dword [ebp - 0x18]
call fcn.0041c9cc
cmp edx, dword [esp + 4]
jne 0x4c5d26
cmp eax, dword [esp]
pop edx
pop eax
jb 0x4c5a09
jmp 0x4c5d2e
pop edx
pop eax
jl 0x4c5a09
cmp dword [ebp - 0x10], 0x15
jne 0x4c5e56
cmp dword [ebp - 0xc], 0
jne 0x4c5d78
mov eax, dword [0x58c93c]
mov eax, dword [eax]
mov eax, dword [eax + 0x304]
mov edx, 0x4c611c
call fcn.00477158
mov eax, dword [0x58c93c]
mov eax, dword [eax]
mov eax, dword [eax + 0x304]
call fcn.00477658
mov eax, dword [0x58c93c]
mov eax, dword [eax]
call fcn.00494714
jmp 0x4c5e56
xor eax, eax
push ebp
push 0x4c5e07
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x418164]
call fcn.00403ca8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0xc]
call fcn.00404de8
mov ecx, eax
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 0x10]
push 0
push 0
mov eax, dword [ebp - 0x18]
call fcn.0041c9ec
mov dl, 1
mov eax, dword [0x49b3d0]
call fcn.0049b684
mov dword [ebp - 0x7c], eax
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov eax, dword [0x58c93c]
mov eax, dword [eax]
mov eax, dword [eax + 0x2f8]
mov eax, dword [eax + 0x168]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [0x58c93c]
mov eax, dword [eax]
mov eax, dword [eax + 0x304]
call fcn.00477650
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4c5e3a
mov eax, dword [ebp - 0x18]
call fcn.00403cd8
mov eax, dword [ebp - 0x7c]
call fcn.00403cd8
mov eax, dword [0x58c93c]
mov eax, dword [eax]
call fcn.00494714
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4c5f38
lea eax, [ebp - 0x8ec]
mov edx, 0xc
call fcn.00404b4c
lea eax, [ebp - 0x8bc]
call fcn.00404b28
lea eax, [ebp - 0x8b8]
mov edx, 3
call fcn.00404b4c
lea eax, [ebp - 0x8ac]
call fcn.00404b28
lea eax, [ebp - 0x898]
mov edx, 3
call fcn.00404b4c
lea eax, [ebp - 0x88c]
call fcn.00404b28
lea eax, [ebp - 0x888]
call fcn.00404b28
lea eax, [ebp - 0x884]
call fcn.00404b28
lea eax, [ebp - 0x880]
mov edx, 3
call fcn.00404b4c
lea eax, [ebp - 0x874]
call fcn.00404b28
lea eax, [ebp - 0x870]
mov edx, 0x11
call fcn.00404b4c
lea eax, [ebp - 0x82c]
call fcn.00404b28
lea eax, [ebp - 0x828]
mov edx, 0x11
call fcn.00404b4c
lea eax, [ebp - 0x48]
mov edx, 6
call fcn.00404b4c
lea eax, [ebp - 0x14]
call fcn.00404b28
lea eax, [ebp - 0xc]
call fcn.00404b28
ret