Function at 0x455776
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x168
push ebx
push esi
push edi
mov edi, 0x4bd5d8
mov eax, edi
xor esi, esi
test eax, eax
mov ebx, ecx
mov dword [ebp - 4], esi
je 0x45579b
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push edi
push eax
lea ecx, [ebx + 0x268]
call fcn.004039ec
push esi
call dword [sym.imp.ole32.dll_OleInitialize]
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, ebx
call fcn.0045167e
mov edi, eax
cmp edi, esi
mov dword [ebp - 0x18], edi
je 0x455c3b
push esi
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0x1032
push edi
call esi
push 0
push 0
push 0x1004
push edi
mov dword [ebp - 0x14], eax
call esi
mov edx, eax
mov eax, dword [ebp - 0x14]
push 7
mov dword [ebx + 0xac], edi
mov dword [ebx + 0xb0], eax
pop ecx
xor eax, eax
lea edi, [ebp - 0x3c]
cmp dword [ebp - 0x14], eax
push 1
rep stosd dword es:[edi], eax
pop edi
mov dword [ebp - 0x10], edx
mov dword [ebx + 0xb4], edx
mov dword [ebp - 0x40], 0x20
mov dword [ebp - 0x3c], edi
jne 0x4558f8
cmp edx, edi
jne 0x455835
mov dword [ebp - 4], edi
push 0xa1
lea eax, [ebp - 0xc]
jmp 0x455844
mov dword [ebp - 4], 2
push 0xa2
lea eax, [ebp - 0x18]
push eax
call fcn.00461770
mov eax, dword [eax]
pop ecx
pop ecx
push eax
lea ecx, [ebx + 0x21c]
push dword [ebp - 0x10]
push str._d__s
push ecx
call fcn.00403d66
add esp, 0x10
test byte [ebp - 4], 2
je 0x455878
and dword [ebp - 4], 0xfffffffd
lea ecx, [ebp - 0x18]
call fcn.004038fb
test byte [ebp - 4], 1
je 0x455886
lea ecx, [ebp - 0xc]
call fcn.004038fb
mov dword [ebp - 0x34], edi
lea eax, [ebp - 0x40]
mov edi, 0x851f
push eax
mov eax, dword [ebx + 0xe4]
push edi
push 0x440
push dword [eax + 0x224]
call esi
lea esi, [ebx + 0x21c]
lea ecx, [ebx + 0x220]
push esi
call fcn.00403a8c
push 0x80
push ecx
mov ecx, esp
push esi
call fcn.004038b5
mov eax, dword [ebx + 0xe4]
push edi
push dword [eax + 0x224]
call fcn.0048f0db
mov ecx, dword [ebx + 0xe4]
add esp, 0x10
call fcn.004762a6
cmp dword [0x4c42fc], 4
jne 0x455c3b
jmp 0x455b6c
cmp dword [ebp - 0x14], edi
jne 0x455a2f
lea ecx, [ebp - 0x60]
call fcn.0042e82d
mov edi, dword [ebp - 0x18]
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x5c], edi
call fcn.00430105
cmp eax, 0xffffffff
je 0x455b51
push eax
push edi
mov ecx, ebx
call fcn.004534c2
test eax, eax
mov dword [ebp - 0xc], eax
je 0x455b51
cmp dword [ebx + 0x1c4], 0
je 0x455b51
push eax
lea ecx, [ebp - 0x20]
call fcn.0048994a
mov eax, dword [0x4b0550]
lea edx, [ebp - 0x168]
push edx
mov dword [ebp - 8], eax
mov eax, dword [ebx + 0x1c4]
push 0x8000
push dword [ebp - 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x2c]
lea eax, [ebp - 8]
push 0
push eax
lea esi, [ebp - 0x168]
sub esp, 0x108
push 0x42
pop ecx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.0048de31
add esp, 0x110
cmp dword [0x4c42fc], 4
jne 0x4559a9
lea eax, [ebp - 8]
lea ecx, [ebx + 0x268]
push eax
call fcn.00403a8c
mov eax, dword [ebp - 8]
cmp dword [eax - 8], 0
je 0x455b2c
mov eax, dword [ebx + 0x1c4]
mov dword [ebp - 0x10], 0x20088000
test eax, eax
je 0x4559d7
mov ecx, dword [eax]
lea edx, [ebp - 0x10]
push edx
lea edx, [ebp - 0xc]
push edx
push 1
push eax
call dword [ecx + 0x24]
push dword [ebp - 0xc]
call dword [sym.imp.SHELL32.dll_ILFree]
test byte [ebp - 0xd], 0x20
je 0x455b3b
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 0x10
je 0x455b3b
cmp eax, 0xffffffff
je 0x455b3b
cmp dword [0x4c792c], 1
jle 0x455a9f
lea ecx, [ebp - 8]
call fcn.004038fb
lea ecx, [ebp - 0x20]
call fcn.0048996a
lea ecx, [ebp - 0x60]
call fcn.0042e8c1
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x4c42fc], 4
jne 0x455a43
mov ecx, dword [ebx + 0xe4]
call fcn.00478631
lea eax, [ebp - 0x40]
mov edi, 0x851f
push eax
mov eax, dword [ebx + 0xe4]
push edi
push 0x440
mov dword [ebp - 0x34], 2
push dword [eax + 0x224]
call esi
mov ecx, dword [ebx + 0xe4]
xor eax, eax
cmp dword [0x4c792c], 2
sete al
mov dword [ebp - 0x10], eax
call fcn.004762a6
cmp dword [ebp - 0x14], 1
jne 0x455b7c
mov dword [ebp - 4], 4
push 0x9f
lea eax, [ebp - 8]
jmp 0x455b8b
lea eax, [ebp - 0x40]
mov edi, 0x851f
push eax
mov eax, dword [ebx + 0xe4]
push edi
push 0x440
mov dword [ebp - 0x34], 3
push dword [eax + 0x224]
call dword [sym.imp.USER32.dll_SendMessageW]
lea esi, [ebx + 0x220]
lea eax, [ebp - 8]
push eax
mov ecx, esi
call fcn.00403a8c
push 0x80
push ecx
mov ecx, esp
push esi
call fcn.004038b5
mov eax, dword [ebx + 0xe4]
push edi
push dword [eax + 0x224]
call fcn.0048f0db
add esp, 0x10
cmp dword [0x4c42fc], 4
jne 0x455b0f
mov ecx, dword [ebx + 0xe4]
call fcn.00478631
lea ecx, [ebp - 8]
call fcn.004038fb
lea ecx, [ebp - 0x20]
call fcn.0048996a
lea ecx, [ebp - 0x60]
call fcn.0042e8c1
jmp 0x455c3b
cmp dword [ebp - 0xc], 0
je 0x455b3b
push dword [ebp - 0xc]
call dword [sym.imp.SHELL32.dll_ILFree]
lea ecx, [ebp - 8]
call fcn.004038fb
lea ecx, [ebp - 0x20]
call fcn.0048996a
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
lea ecx, [ebp - 0x60]
call fcn.0042e8c1
push 0
push 0x1b208
push 0x111
push dword [ebx + 4]
call esi
mov esi, eax
mov ecx, dword [ebx + 0xe4]
call fcn.00478631
jmp 0x455c3b
mov dword [ebp - 4], 8
push 0xa0
lea eax, [ebp - 0xc]
push eax
call fcn.00461770
mov eax, dword [eax]
pop ecx
pop ecx
lea esi, [ebx + 0x21c]
push eax
push dword [ebp - 0x14]
push str._d__s
push esi
call fcn.00403d66
add esp, 0x10
test byte [ebp - 4], 8
je 0x455bbf
and dword [ebp - 4], 0xfffffff7
lea ecx, [ebp - 0xc]
call fcn.004038fb
test byte [ebp - 4], 4
je 0x455bcd
lea ecx, [ebp - 8]
call fcn.004038fb
push esi
lea ecx, [ebx + 0x220]
call fcn.00403a8c
push 0x80
push ecx
mov ecx, esp
push esi
call fcn.004038b5
mov eax, dword [ebx + 0xe4]
push edi
push dword [eax + 0x224]
call fcn.0048f0db
add esp, 0x10
cmp dword [0x4c792c], 0
je 0x455c30
cmp dword [ebx + 0x3c], 0
je 0x455c3b
push dword [ebp - 0x14]
mov ecx, ebx
push dword [ebp - 0x10]
push dword [ebp - 0x18]
call fcn.00455c42
cmp eax, 0xffffffff
jne 0x455c30
push dword [ebp - 0x14]
mov ecx, ebx
push dword [ebp - 0x10]
push dword [ebp - 0x18]
call fcn.00456339
mov ecx, dword [ebx + 0xe4]
call fcn.004762a6
pop edi
pop esi
pop ebx
leave
ret 4