Function at 0x459614
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 3
add esp, 0xfffff004
push eax
dec eax
jne 0x45961d
mov eax, dword [ebp - 4]
add esp, 0xfffff228
push ebx
push esi
push edi
mov dword [ebp - 0x40], edx
mov ebx, eax
mov eax, 0x4a91b0
call fcn.00498090
mov word [ebp - 0x2c], 8
inc dword [0x4c77cc]
inc dword [ebp - 0x20]
mov word [ebp - 0x2c], 0x14
call fcn.004a0084
mov dword [ebp - 0x44], eax
push 1
push 0xffffffffffffffff
push 0x100c
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov dword [ebp - 0x48], eax
mov eax, 0x4c53a8
mov edx, 1
call fcn.0047c7b4
mov eax, 0x1c4
call fcn.004125b4
mov edx, eax
mov eax, 0x4c53a8
call fcn.0047c814
push 0
push 0
push 0xb
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov eax, ebx
call fcn.0045d59c
push 0xffffffffffffffff
push dword [ebx + 8]
call sub.COMCTL32.DLL_ImageList_Remove
push dword [ebx + 8]
push 1
push 0x1003
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov eax, 0x4c5398
call fcn.004759c8
lea edx, [ebp - 0x11c]
mov eax, 0x4c5b84
call fcn.0045759c
lea ecx, [ebp - 0xd1c]
lea edx, [ebp - 0x51c]
mov eax, 0x4c5b84
call fcn.0045753c
lea edx, [ebp - 0x51c]
mov eax, ebx
call fcn.00459590
test al, al
je 0x459710
mov word [ebp - 0xd1c], 0
lea edx, [ebp - 0x51c]
mov eax, 0x4c5360
call fcn.0045e9a8
lea edx, [ebp - 0x51c]
push edx
call fcn.00497c90
pop ecx
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0xd1c]
call fcn.0041074c
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x4c], 0
je 0x459747
inc dword [ebp - 0x4c]
cmp byte [0x4b3a20], 0
je 0x459762
lea edx, [ebp - 0x51c]
mov eax, 0x4b3920
call fcn.00410bc4
jmp 0x45976f
lea edx, [ebp - 0x51c]
push edx
call fcn.00497c90
pop ecx
test eax, eax
je 0x459774
inc eax
cmp dword [ebp - 0x50], 0
je 0x459780
mov ecx, dword [ebp - 0x50]
inc ecx
jmp 0x459782
mov ecx, eax
mov dword [ebp - 0x50], ecx
xor edi, edi
mov byte [ebp - 0x51], 0
mov byte [ebp - 0x52], 0
mov edx, 0x4a8e0c
mov eax, 0x4a8e03
mov ecx, 1
call fcn.0046136c
test eax, eax
mov edx, str.FlatView
setne al
and eax, 1
xor ecx, ecx
mov byte [ebp - 0x53], al
mov eax, 0x4a8e03
call fcn.0046136c
test eax, eax
setne dl
and edx, 1
mov byte [ebp - 0x54], dl
mov word [ebp - 0x2c], 0x20
lea eax, [ebp - 0x18]
call fcn.0045a208
inc dword [ebp - 0x20]
mov word [ebp - 0x2c], 0x14
mov byte [ebp - 0x111c], 0
jmp 0x459e38
cmp byte [ebp - 0x51], 0
jne 0x459820
test edi, 0x1f
jne 0x459820
call fcn.004a0084
sub eax, dword [ebp - 0x44]
cmp eax, 0x1f4
jle 0x459820
mov byte [ebp - 0x51], 1
push 0x7f02
push 0
call sub.USER32.DLL_LoadCursorA
push eax
call sub.USER32.DLL_SetCursor
lea esi, [ebp - 0x1d4c]
add esi, dword [ebp - 0x4c]
mov word [ebp - 0x2c], 0x14
mov eax, dword [ebp - 0x50]
add eax, eax
lea edx, [ebp - 0x194c]
add eax, edx
mov dword [ebp - 0x58], eax
test byte [ebp - 0x113c], 0x10
setne cl
and ecx, 1
mov byte [ebp - 0x59], cl
cmp byte [ebp - 0x54], 0
je 0x459870
lea eax, [ebp - 0x1d4c]
call fcn.0040bd0c
mov esi, eax
lea eax, [ebp - 0x194c]
call fcn.0040bd98
mov dword [ebp - 0x58], eax
cmp byte [ebp - 0x59], 0
je 0x45995f
cmp byte [ebp - 0x54], 0
jne 0x45995f
test byte [ebp - 0x112e], 1
je 0x4598dc
lea edx, [ebp - 0x111c]
push edx
push esi
call fcn.00497c14
add esp, 8
test eax, eax
je 0x459e38
push esi
lea ecx, [ebp - 0x111c]
push ecx
call fcn.00497c60
add esp, 8
lea ecx, [ebp - 0x194c]
lea edx, [ebp - 0x1d4c]
mov eax, 0x4c9804
push 0
push 1
call fcn.00460ae4
test al, al
jne 0x459e38
jmp 0x45995f
lea eax, [ebp - 0x60]
push eax
push 1
lea ecx, [ebp - 0x194c]
lea edx, [ebp - 0x1d4c]
mov eax, 0x4c9804
call fcn.00460ae4
test al, al
je 0x45995f
mov eax, 0x4c9804
mov edx, dword [ebp - 0x60]
call fcn.00460ba0
mov ecx, dword [ebp - 0x1138]
mov dword [eax + 0x20], ecx
mov ecx, dword [ebp - 0x1134]
mov dword [eax + 0x24], ecx
lea ecx, [ebp - 0x1db0]
lea edx, [ebp - 0x1138]
mov eax, ebx
call fcn.0045a0b4
mov dword [ebp - 0x1dd0], 4
lea eax, [ebp - 0x1db0]
lea edx, [ebp - 0x1dd8]
mov dword [ebp - 0x1dc4], eax
push edx
push dword [ebp - 0x60]
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
jmp 0x459e38
mov dword [ebp - 0x1e00], 7
xor ecx, ecx
mov dword [ebp - 0x1dfc], edi
mov dword [ebp - 0x1df8], ecx
mov dword [ebp - 0x1de4], ecx
lea eax, [ebp - 0x64]
lea edx, [ebp - 0x1e64]
push eax
push edx
lea eax, [ebp - 0x68]
push 0x64
push eax
lea eax, [ebp - 0x18]
mov ecx, dword [ebp - 0x113c]
mov edx, esi
call fcn.0045a304
mov byte [ebp - 0x74], 0
test byte [ebp - 0x1130], 1
je 0x4599bc
push 0x4a8e28
lea eax, [ebp - 0x74]
push eax
call fcn.00497b84
add esp, 8
mov eax, dword [ebp - 0x1130]
and eax, 6
test eax, eax
je 0x459a1a
sub eax, 2
je 0x4599da
sub eax, 2
je 0x4599ed
sub eax, 2
je 0x459a09
jmp 0x459a1a
push 0x4a8e2b
lea edx, [ebp - 0x74]
push edx
call fcn.00497b84
add esp, 8
jmp 0x459a1a
cmp byte [ebp - 0x87], 0
jne 0x459a1a
push 0x4a8e30
lea ecx, [ebp - 0x74]
push ecx
call fcn.00497b84
add esp, 8
jmp 0x459a1a
push str.____
lea eax, [ebp - 0x74]
push eax
call fcn.00497b84
add esp, 8
cmp dword [ebp - 0x68], 0xffffffff
je 0x459a2b
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x1de4], edx
jmp 0x459a54
push dword [ebp - 0x64]
push 0xffffffffffffffff
push dword [ebx + 8]
call sub.COMCTL32.DLL_ImageList_ReplaceIcon
mov dword [ebp - 0x1de4], eax
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x1de4]
call fcn.0045a434
push dword [ebp - 0x64]
call sub.USER32.DLL_DestroyIcon
lea ecx, [edi + 1]
mov dword [ebp - 0x1128], ecx
lea edx, [ebp - 0x1d4c]
mov eax, 0x4c9804
call fcn.004607fc
mov dword [ebp - 0x1de0], eax
lea edx, [ebp - 0x1d4c]
mov eax, ebx
call fcn.00459590
test al, al
je 0x459a96
mov word [ebp - 0x194c], 0
lea ecx, [ebp - 0x194c]
mov dword [ebp - 0x58], ecx
cmp byte [ebp - 0x53], 0
jne 0x459ab5
mov eax, esi
call fcn.0047d2f0
cmp word [ebp - 0x194c], 0
je 0x459ab5
mov eax, dword [ebp - 0x58]
call fcn.0047d324
call fcn.00410420
test eax, eax
je 0x459b06
cmp word [ebp - 0x194c], 0
je 0x459b06
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x1dec], edx
mov eax, dword [ebp - 0x58]
call fcn.0041074c
mov edx, eax
lea eax, [ebp - 0x74]
add edx, edx
mov ecx, 0x1000000
add edx, dword [ebp - 0x58]
call fcn.00410498
lea edx, [ebp - 0x1e00]
push edx
push 0
push 0x104d
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov esi, eax
jmp 0x459b75
cmp word [ebp - 0x194c], 0
je 0x459b4b
lea edx, [ebp - 0x2264]
mov ecx, 0x1000000
mov eax, dword [ebp - 0x58]
call fcn.00410474
push 0x4a8e3a
lea eax, [ebp - 0x2264]
push eax
call fcn.00497d39
add esp, 8
test eax, eax
jne 0x459b4b
lea edx, [ebp - 0x2264]
push edx
push esi
call fcn.00497c60
add esp, 8
mov dword [ebp - 0x1dec], esi
lea ecx, [ebp - 0x74]
push ecx
push esi
call fcn.00497b84
add esp, 8
lea eax, [ebp - 0x1e00]
push eax
push 0
push 0x1007
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov esi, eax
cmp byte [ebp - 0x59], 0
jne 0x459c76
cmp dword [ebp - 0x1148], 0x80000000
jne 0x459b92
cmp dword [ebp - 0x114c], 0
je 0x459ba9
cmp dword [ebp - 0x1148], 0x7fffffff
jne 0x459bbf
cmp dword [ebp - 0x114c], 0
jne 0x459bbf
push 0x4a8e40
lea eax, [ebp - 0x2298]
push eax
call fcn.00497c60
add esp, 8
jmp 0x459bdb
push dword [ebp - 0x1148]
push dword [ebp - 0x114c]
lea eax, [ebp - 0x2298]
mov edx, 0x32
call fcn.0047c96c
mov dword [ebp - 0x22b8], 1
lea ecx, [ebp - 0x2298]
lea eax, [ebp - 0x22c0]
mov dword [ebp - 0x22ac], ecx
push eax
push esi
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
cmp dword [ebp - 0x1140], 0x80000000
jne 0x459c30
cmp dword [ebp - 0x1144], 0
jne 0x459c30
push 0x4a8e40
lea edx, [ebp - 0x2298]
push edx
call fcn.00497c60
add esp, 8
jmp 0x459c4c
push dword [ebp - 0x1140]
push dword [ebp - 0x1144]
lea eax, [ebp - 0x2298]
mov edx, 0x32
call fcn.0047c96c
mov dword [ebp - 0x22e0], 2
lea ecx, [ebp - 0x2298]
lea eax, [ebp - 0x22e8]
mov dword [ebp - 0x22d4], ecx
push eax
push esi
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov dword [ebp - 0x2308], 3
lea edx, [ebp - 0x1e64]
lea ecx, [ebp - 0x2310]
mov dword [ebp - 0x22fc], edx
push ecx
push esi
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
cmp dword [ebp - 0x1138], 0
jne 0x459cc8
cmp dword [ebp - 0x1134], 0
jne 0x459cc8
push 0x4a8e40
lea eax, [ebp - 0x2374]
push eax
call fcn.00497c60
add esp, 8
jmp 0x459cdb
lea ecx, [ebp - 0x2374]
lea edx, [ebp - 0x1138]
mov eax, ebx
call fcn.0045a0b4
mov dword [ebp - 0x2394], 4
lea edx, [ebp - 0x2374]
lea ecx, [ebp - 0x239c]
mov dword [ebp - 0x2388], edx
push ecx
push esi
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov eax, dword [ebp - 0x1130]
test al, 8
je 0x459d5f
cmp byte [ebp - 0x59], 0
jne 0x459d5f
push dword [ebp - 0x112c]
test al, 0x10
je 0x459d26
mov edx, str._04X
jmp 0x459d2b
mov edx, str._08X
push edx
lea eax, [ebp - 0x80]
push eax
call fcn.0049abc0
add esp, 0xc
mov dword [ebp - 0x23bc], 5
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0x23c4]
mov dword [ebp - 0x23b0], ecx
push eax
push esi
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
cmp byte [ebp - 0x52], 0
jne 0x459da2
mov dword [ebp - 0x23e4], 4
test byte [ebp - 0x1130], 0x10
mov eax, 0x74
jne 0x459d7e
dec eax
call fcn.004125b4
mov dword [ebp - 0x23d8], eax
lea edx, [ebp - 0x23e4]
push edx
push 5
push 0x101a
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov byte [ebp - 0x52], 1
cmp byte [ebp - 0x54], 0
je 0x459e37
lea edx, [ebp - 0x27e4]
lea eax, [ebp - 0x1d4c]
mov ecx, 0x400
call fcn.0040c258
lea edx, [ebp - 0x2fe4]
lea eax, [ebp - 0x194c]
mov ecx, 0x400
call fcn.0040c294
mov dword [ebp - 0x3004], 6
call fcn.00410420
test eax, eax
je 0x459e17
cmp word [ebp - 0x194c], 0
je 0x459e17
lea eax, [ebp - 0x2fe4]
lea edx, [ebp - 0x300c]
mov dword [ebp - 0x2ff8], eax
push edx
push esi
push 0x1074
push dword [ebx]
call sub.USER32.DLL_SendMessageA
jmp 0x459e37
lea ecx, [ebp - 0x27e4]
lea eax, [ebp - 0x300c]
mov dword [ebp - 0x2ff8], ecx
push eax
push esi
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
inc edi
lea edx, [ebp - 0x1d4c]
mov eax, 0x4c5b84
mov cl, byte [ebp - 0x54]
call fcn.00456ad8
test eax, eax
jne 0x4597ed
mov dword [ebp - 0x3034], 7
mov dword [ebp - 0x3030], edi
xor edx, edx
mov dword [ebp - 0x302c], edx
mov dword [ebp - 0x3018], edx
mov dword [ebp - 0x3020], 0x4a8e00
mov byte [ebp - 0x3134], 0
lea ecx, [ebp - 0x3134]
mov edx, str.Folder
lea eax, [ebp - 0x18]
call fcn.0045a5a8
mov esi, eax
mov word [ebp - 0x2c], 0x14
push esi
push 0xffffffffffffffff
push dword [ebx + 8]
call sub.COMCTL32.DLL_ImageList_ReplaceIcon
mov dword [ebp - 0x3018], eax
push esi
call sub.USER32.DLL_DestroyIcon
push 0xc30
push 0
lea eax, [ebp - 0x3d64]
push eax
call fcn.00497ae0
add esp, 0xc
push 0x4a8e00
lea edx, [ebp - 0x3d64]
push edx
call fcn.00497c60
mov dword [ebp - 0x3154], 0x10
add esp, 8
lea edx, [ebp - 0x3d64]
mov eax, 0x4c9804
call fcn.004607fc
mov dword [ebp - 0x3014], eax
lea ecx, [ebp - 0x3034]
push ecx
push 0
push 0x1007
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov dword [ebp - 0x3d84], 3
lea edx, [ebp - 0x3134]
lea ecx, [ebp - 0x3d8c]
mov dword [ebp - 0x3d78], edx
push ecx
push eax
push 0x102e
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov eax, 0x4c9804
call fcn.00460ab0
mov eax, ebx
call fcn.0045d218
cmp dword [ebp - 0x40], 0
je 0x459fab
mov edx, dword [ebp - 0x40]
mov eax, ebx
call fcn.0045947c
test eax, eax
jne 0x459fd4
push 0
push 0
push 0x1004
push dword [ebx]
call sub.USER32.DLL_SendMessageA
test eax, eax
jle 0x459f7f
cmp eax, dword [ebp - 0x48]
jg 0x459f7f
dec eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x3da4], 3
mov dword [ebp - 0x3da8], 3
lea edx, [ebp - 0x3db4]
push edx
push dword [ebp - 0x48]
push 0x102b
push dword [ebx]
call sub.USER32.DLL_SendMessageA
jmp 0x459fd4
mov dword [ebp - 0x3dcc], 3
mov dword [ebp - 0x3dd0], 3
lea ecx, [ebp - 0x3ddc]
push ecx
push 0
push 0x102b
push dword [ebx]
call sub.USER32.DLL_SendMessageA
push 0
push 1
push 0xb
push dword [ebx]
call sub.USER32.DLL_SendMessageA
push 0
push 0
push 0x102a
push dword [ebx]
call sub.USER32.DLL_SendMessageA
mov eax, 0x4c53a8
xor edx, edx
call fcn.0047c814
mov eax, ebx
call fcn.0045c470
mov eax, ebx
call fcn.0045c6a8
mov eax, 0x4c5378
call fcn.00476e2c
cmp byte [ebp - 0x51], 0
je 0x45a02d
push 0x7f00
push 0
call sub.USER32.DLL_LoadCursorA
push eax
call sub.USER32.DLL_SetCursor
mov eax, 0x4c53a8
xor edx, edx
call fcn.0047c7b4
dec dword [ebp - 0x20]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.0045a2c8
dec dword [ebp - 0x20]
cmp dword [0x4c77cc], 0
jle 0x45a05b
dec dword [0x4c77cc]
mov ecx, dword [ebp - 0x3c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret