Function at 0x455590
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov edx, eax
cmp edx, 0x100
jge 0x4555e3
cmp edx, 0x1f
jg 0x4555cc
je 0x4559ec
sub edx, 7
je 0x4556c6
dec edx
je 0x455704
jmp 0x455a84
sub edx, 0x21
je 0x455995
sub edx, 0x63
je 0x455716
jmp 0x455a84
cmp edx, 0xb047
jg 0x455620
je 0x45568b
add edx, 0xffffff00
sub edx, 0xa
jb 0x4559d7
add edx, 0xffffff0a
sub edx, 0xb
jb 0x4557c3
sub edx, 0x98
je 0x45577b
jmp 0x455a84
sub edx, 0xb04a
je 0x455a2e
sub edx, 4
jne 0x455a84
mov eax, dword [ebp - 4]
test byte [eax + 0x1c], 0x10
je 0x455a84
mov eax, dword [0x491864]
cmp dword [eax], 0
je 0x455a84
push 0x455aac
push 0x455aac
mov eax, dword [ebp - 4]
call fcn.00458494
push eax
mov eax, dword [0x491864]
mov eax, dword [eax]
call eax
push 0x77
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.00458494
push eax
call sub.KERNEL32.DLL_SetFileAttributesA
jmp 0x455a84
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0043bc2c
mov ebx, eax
test ebx, ebx
je 0x455a84
cmp ebx, dword [ebp - 4]
je 0x455a84
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
push eax
mov ecx, dword [ebp - 8]
mov ecx, dword [ecx + 4]
mov edx, 0xb047
mov eax, ebx
call fcn.004519e8
jmp 0x455a84
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0043bc2c
mov ebx, eax
test ebx, ebx
je 0x455a84
test byte [ebx + 0x1c], 0x10
je 0x4556ea
cmp dword [ebx + 0x30], 0
jne 0x455a84
mov edx, dword [ebp - 4]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0xf8]
test al, al
je 0x455aa5
jmp 0x455a84
mov eax, dword [ebp - 4]
test byte [eax + 0x54], 0x20
jne 0x455aa5
jmp 0x455a84
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.00451ac4
mov eax, dword [ebp - 8]
cmp dword [eax + 0xc], 0xffffffff
jne 0x455aa5
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
mov dword [ebp - 0x14], eax
movsx eax, word [ebp - 0x14]
mov dword [ebp - 0x1c], eax
movsx eax, word [ebp - 0x12]
mov dword [ebp - 0x18], eax
push 0
push 0
lea ecx, [ebp - 0x34]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.00450270
lea edx, [ebp - 0x34]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004552cc
test eax, eax
je 0x455aa5
mov eax, dword [ebp - 8]
mov dword [eax + 0xc], 1
jmp 0x455aa5
mov eax, dword [ebp - 4]
mov byte [eax + 0x238], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
test eax, eax
je 0x4557a2
push 0
xor ecx, ecx
mov edx, 0xb014
call fcn.004519e8
jmp 0x4557b3
push 0
xor ecx, ecx
mov edx, 0xb014
mov eax, dword [ebp - 4]
call fcn.004519e8
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x23c], edx
jmp 0x455a84
mov edx, dword [ebp - 8]
cmp eax, 0x200
jne 0x45593e
lea ecx, [ebp - 0x34]
mov edx, dword [ebp - 8]
movsx edx, word [edx + 0xa]
mov eax, dword [ebp - 8]
movsx eax, word [eax + 8]
call fcn.00418390
lea edx, [ebp - 0x34]
lea ecx, [ebp - 0x10]
mov eax, dword [ebp - 4]
call fcn.004501c0
call fcn.0044d4dc
mov dword [0x48f710], eax
cmp dword [0x48f710], 0
jne 0x455816
lea eax, [ebp - 0x10]
mov dl, 1
call fcn.0044eca8
mov ebx, eax
jmp 0x45581c
mov ebx, dword [0x48f710]
mov eax, dword [ebp - 4]
cmp ebx, dword [eax + 0x23c]
je 0x4558ff
mov eax, dword [ebp - 4]
cmp dword [eax + 0x23c], 0
je 0x455840
cmp dword [0x48f710], 0
je 0x455876
cmp dword [0x48f710], 0
je 0x45585a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
cmp eax, dword [0x48f710]
je 0x455876
cmp dword [0x48f710], 0
je 0x45588d
mov eax, dword [0x48f710]
mov eax, dword [eax + 0x30]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x23c]
jne 0x45588d
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
xor ecx, ecx
mov edx, 0xb014
call fcn.004519e8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
test eax, eax
je 0x4558a2
mov edx, dword [ebp - 4]
call fcn.00420184
mov edx, dword [ebp - 4]
mov eax, ebx
mov dword [edx + 0x23c], eax
test eax, eax
je 0x4558b9
mov edx, dword [ebp - 4]
call fcn.0041ff44
mov eax, dword [ebp - 4]
cmp dword [eax + 0x23c], 0
je 0x4558ce
cmp dword [0x48f710], 0
je 0x4558e8
cmp dword [0x48f710], 0
je 0x4558ff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
cmp eax, dword [0x48f710]
jne 0x4558ff
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x23c]
xor ecx, ecx
mov edx, 0xb013
call fcn.004519e8
mov eax, dword [ebp - 4]
cmp byte [eax + 0x238], 0
jne 0x45593e
mov eax, dword [ebp - 4]
mov byte [eax + 0x238], 1
mov dword [ebp - 0x2c], 0x10
mov dword [ebp - 0x28], 2
mov eax, dword [ebp - 4]
call fcn.00458494
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], 0xffffffff
lea eax, [ebp - 0x2c]
push eax
call sub.comctl32.dll__TrackMouseEvent
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.004554dc
test al, al
je 0x455a84
mov eax, dword [ebp - 8]
cmp dword [eax + 0xc], 0
jne 0x455aa5
mov eax, dword [ebp - 4]
call fcn.004587a0
test al, al
je 0x455aa5
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 4]
call fcn.00458494
push eax
call fcn.00407fc4
jmp 0x455aa5
mov edx, dword [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.00455390
test al, al
je 0x455a84
mov eax, dword [ebp - 8]
cmp dword [eax + 0xc], 0
jne 0x455aa5
mov eax, dword [ebp - 4]
call fcn.004587a0
test al, al
je 0x455aa5
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.00451ac4
jmp 0x455aa5
mov eax, dword [ebp - 4]
call fcn.00450f5c
test al, al
jne 0x455aa5
jmp 0x455a84
mov eax, dword [ebp - 4]
call fcn.00458494
mov ebx, eax
call fcn.004080bc
cmp ebx, eax
jne 0x455a84
cmp dword [0x48f710], 0
je 0x455a84
mov eax, dword [0x48f710]
mov eax, dword [eax + 0x30]
cmp eax, dword [ebp - 4]
jne 0x455a84
push 0
xor ecx, ecx
mov edx, 0x1f
mov eax, dword [0x48f710]
call fcn.004519e8
jmp 0x455a84
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
test al, al
je 0x455a42
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.00459834
xor eax, eax
push ebp
push 0x455a7d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xb0]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x455aa5
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
test al, al
je 0x455a7c
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00459834
ret
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.00451ac4
mov eax, dword [ebp - 8]
cmp dword [eax], 0x128
jne 0x455aa5
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x80]
pop ebx
mov esp, ebp
pop ebp
ret