Function at 0x41a8b0
Capabilities:
Check for unmoving mouse cursor
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x444938
mov eax, dword fs:[0]
push eax
sub esp, 0xc08
mov eax, dword [0x453140]
xor eax, esp
mov dword [esp + 0xc00], eax
push ebx
push esi
push edi
mov eax, dword [0x453140]
xor eax, esp
push eax
lea eax, [esp + 0xc18]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
cmp eax, 0x113
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x14]
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x40], edi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x34], esi
mov dword [esp + 0x60], edx
ja 0x41a988
je case.0x41a9fc.1079
cmp eax, 0x21
ja 0x41a93d
je case.0x41a9fc.1079
lea ecx, [eax - 2]
cmp ecx, 0x14
ja case.0x41a9fc.1085
movzx ecx, byte [ecx + 0x41d5e0]
jmp dword [ecx*4 + 0x41d5d8]
cmp eax, 0x46
je case.0x41a9fc.1079
cmp eax, 0x7e
je case.0x41a9fc.1079
cmp eax, 0x111
je case.0x41a9fc.1079
cmp eax, 0x465
je case.0x41a9fc.1079
cmp eax, 0x464
je case.0x41a9fc.1079
cmp eax, 0x466
je case.0x41a9fc.1079
mov ecx, dword [edi + 0x308]
test ecx, ecx
je 0x41a971
cmp eax, ecx
je case.0x41a9fc.1079
mov ecx, dword [edi + 0x30c]
test ecx, ecx
je 0x41a97f
cmp eax, ecx
je case.0x41a9fc.1079
push edx
push esi
push eax
push ebx
jmp 0x41d5a9
cmp eax, 0x31e
ja 0x41a9e6
je case.0x41a9fc.1079
cmp eax, 0x207
ja 0x41a9da
je case.0x41a9fc.1079
cmp eax, 0x201
jb case.0x41a9fc.1085
cmp eax, 0x205
ja case.0x41a9fc.1085
cmp eax, 0x201
ja 0x41abb9
je 0x41ab43
cmp eax, 0x21
ja 0x41aa1a
je 0x41aa03
add eax, 0xfffffffe
cmp eax, 0x14
ja case.0x41c64d.1081
movzx edx, byte [eax + 0x41d600]
jmp dword [edx*4 + 0x41d5f8]
cmp eax, 0x312
je case.0x41a9fc.1079
jmp case.0x41a9fc.1085
lea ecx, [eax - 0x437]
cmp ecx, 0xb
ja case.0x41a9fc.1085
movzx ecx, byte [ecx + 0x41d620]
jmp dword [ecx*4 + 0x41d618]
cmp dword [edi + 0xb0], 2
jne case.0x41c676.3
mov eax, 3
jmp 0x41d5af
lea ecx, [eax - 0x46]
cmp ecx, 0xcd
ja case.0x41c64d.1081
movzx ecx, byte [ecx + 0x41d640]
jmp dword [ecx*4 + 0x41d62c]
cmp dword [edi + 0xb0], 2
jne case.0x41c676.3
mov eax, dword [edx + 4]
test eax, eax
je case.0x41c676.3
cmp eax, 0xfffffffe
je case.0x41c676.3
mov dword [edx + 4], 1
xor eax, eax
jmp 0x41d5af
push 0
push 0x3e8
push 5
push ebx
call dword [sym.imp.USER32.dll_SetTimer]
xor eax, eax
jmp 0x41d5af
cmp esi, 5
ja case.0x41c676.3
jmp dword [esi*4 + 0x41d710]
push 5
push ebx
call dword [sym.imp.USER32.dll_KillTimer]
mov edx, dword [edi + 0x88]
push 1
push 1
push edx
mov ecx, edi
call fcn.004108f0
push 1
push 2
mov ecx, edi
call fcn.00404ba0
mov eax, dword [edi + 0xb4]
push 1
push eax
mov ecx, edi
call fcn.00404ba0
jmp case.0x41c676.3
cmp byte [edi + 0x302], 0
jne case.0x41c676.3
push 0
push eax
mov ecx, edi
jmp 0x41d591
push 2
push ebx
call dword [sym.imp.USER32.dll_KillTimer]
cmp byte [edi + 0xa1], 0
je case.0x41c676.3
cmp byte [edi + 0x178], 0
push 1
je 0x41ab0e
push 0
mov ecx, edi
call fcn.00404ba0
jmp case.0x41c676.3
mov ecx, dword [edi + 0xb4]
push ecx
mov ecx, edi
call fcn.00404ba0
jmp case.0x41c676.3
push 1
mov ecx, edi
call fcn.00410970
jmp case.0x41c676.3
cmp si, 0x69
jne case.0x41c676.3
call fcn.004283d0
jmp case.0x41c676.3
mov ecx, edi
mov byte [edi + 0x17a], 0
call fcn.00405b40
mov eax, dword [edi + 0x17c]
test eax, eax
je case.0x41c676.3
cmp byte [eax + 0x6c], 0
jne case.0x41c676.3
push ebx
call dword [sym.imp.USER32.dll_SetCapture]
mov ecx, dword [edi + 0x174]
mov edx, dword [edi + 0x17c]
mov eax, dword [edi + 0x170]
push 1
mov dword [edi + 0x188], ecx
push 0
mov ecx, edi
mov byte [edi + 0x181], 1
mov byte [edi + 0x182], 0
mov dword [edi + 0xdc], edx
mov dword [edi + 0x184], eax
call fcn.0040f660
mov ecx, edi
call fcn.00405b40
jmp case.0x41c676.3
cmp eax, 0x312
ja 0x41c5ff
je 0x41c5dd
add eax, 0xfffffdfe
cmp eax, 5
ja case.0x41c64d.1081
jmp dword [eax*4 + 0x41d728]
cmp byte [edi + 0x181], 0
jne case.0x41c676.3
mov ecx, dword [edi + 0x17c]
cmp byte [ecx + 0x24], 0
je case.0x41c676.3
call fcn.00421190
jmp case.0x41c676.3
cmp byte [edi + 0x181], 0
je case.0x41c676.3
call dword [sym.imp.USER32.dll_ReleaseCapture]
push 1
push 0
mov ecx, edi
mov byte [edi + 0x181], 0
call fcn.0040f660
cmp byte [edi + 0x182], 0
je 0x41ad67
mov ecx, edi
call fcn.00405ae0
mov al, byte [edi + 0x178]
test al, al
jne 0x41ac72
mov edx, dword [edi + 0xdc]
cmp dword [edx + 8], 0
jne 0x41ac72
push 0
mov ecx, edi
call fcn.004058d0
mov ecx, dword [edi + 0xdc]
call fcn.00421370
push 1
mov ecx, edi
jmp 0x41d58f
mov ecx, dword [edi + 0xdc]
cmp dword [ecx + 8], 0
je 0x41ac8d
neg al
sbb eax, eax
and eax, 0xfffffffd
add eax, 3
push eax
push 0
jmp 0x41ac91
push 0
push 1
push ecx
mov ecx, edi
call fcn.0040e370
mov eax, dword [edi + 0xdc]
cmp byte [eax + 0x6d], 0
jne 0x41ad22
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [edi + 0xdc]
mov byte [edx + 0x19d], 1
mov eax, dword [edi + 0xdc]
lea ecx, [eax + 0x168]
push ecx
add eax, 0x1a0
push eax
call fcn.00402f90
mov edx, dword [esp + 0x24]
sub edx, dword [edi + 0x188]
mov eax, dword [esp + 0x20]
sub eax, dword [edi + 0x184]
mov ecx, dword [edi + 0xdc]
mov dword [esp + 0x1c], edx
fild dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
add ecx, 0x168
fstp dword [esp + 4]
fild dword [esp + 0x1c]
fstp dword [esp]
push ecx
call fcn.00402ff0
mov ecx, dword [edi + 0xdc]
add esp, 0xc
push 1
call fcn.004210a0
mov ecx, edi
call fcn.004059c0
push 0
mov ecx, edi
call fcn.00404400
mov eax, dword [edi + 0xdc]
cmp byte [eax + 0x6d], 0
je 0x41ad53
lea edx, [eax + 0x168]
push edx
add eax, 0x178
push eax
call fcn.00402f90
add esp, 8
push 1
push 0
mov ecx, edi
call fcn.0040f660
push 1
mov ecx, edi
jmp 0x41d58f
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 0x447624
call fcn.00401da0
call fcn.00427f00
mov esi, dword [edi + 0x17c]
add esp, 0x1c
test esi, esi
je 0x41ae2b
cmp byte [esi + 0x24], 0
je 0x41ada2
mov ecx, esi
call fcn.00421160
jmp case.0x41c676.3
mov eax, dword [esi + 8]
test eax, eax
je 0x41adbe
push 1
push 1
push eax
mov ecx, edi
call fcn.004118c0
push 1
mov ecx, edi
jmp 0x41d58f
cmp byte [esi + 0x6c], 0
jne 0x41ae2b
cmp byte [esi + 0x6d], 0
jne 0x41ae2b
cmp byte [edi + 0xac], 0
je 0x41addc
cmp dword [esi + 0x140], 2
jne 0x41ade5
cmp dword [esi + 0x140], 1
jne 0x41ae08
mov ecx, esi
call fcn.00421020
test al, al
je 0x41ae08
push 0x10
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x41ae08
mov ecx, esi
call fcn.00424a00
test al, al
jne 0x41ae2b
push 0
mov ecx, esi
call fcn.00423170
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 0x447624
call fcn.00401da0
mov ecx, esi
call fcn.004231d0
push 1
mov ecx, edi
jmp 0x41d58f
mov edi, dword [edi + 0x17c]
test edi, edi
je case.0x41c676.3
cmp byte [edi + 0x24], 0
je case.0x41c676.3
mov ecx, edi
call fcn.004211c0
jmp case.0x41c676.3
cmp byte [edi + 5], 0
jne case.0x41c676.3
mov esi, dword [edi + 0x17c]
test esi, esi
mov dword [esp + 0x38], esi
je 0x41ae7a
cmp byte [esi + 0x6c], 0
jne case.0x41c676.3
cmp byte [edi + 0x181], 0
je 0x41ae90
cmp byte [edi + 0x182], 0
jne case.0x41c676.3
lea eax, [esp + 0x58]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
test esi, esi
je 0x41aec7
cmp byte [esi + 0x24], 0
je 0x41aec7
mov ecx, dword [esi + 0x44]
push str.OnRightButtonClick
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x41aec7
mov ecx, esi
call fcn.004211f0
test al, al
jne case.0x41c676.3
lea ecx, [esp + 0x688]
mov byte [edi + 0x302], 1
call fcn.0041a520
mov esi, dword [sym.imp.USER32.dll_CreatePopupMenu]
xor ebx, ebx
mov dword [esp + 0xc20], 8
mov dword [esp + 0x24], ebx
call esi
cmp dword [esp + 0x38], ebx
mov dword [esp + 0x20], ebx
mov ebx, dword [sym.imp.USER32.dll_AppendMenuW]
mov dword [esp + 0x48], eax
mov dword [esp + 0x50], eax
je 0x41b0c7
mov eax, dword [esp + 0x38]
cmp byte [eax + 0x6c], 0
jne 0x41b039
cmp byte [eax + 0x6d], 0
jne 0x41af84
cmp byte [eax + 0x6f], 0
je 0x41af84
push 0x24
call fcn.00431acd
mov esi, eax
add esp, 4
mov dword [esp + 0x2c], esi
test esi, esi
mov byte [esp + 0xc20], 9
je 0x41af67
mov edx, dword [esp + 0x38]
sub esp, 0x1c
add edx, 0xcc
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.00407120
mov ecx, esi
call fcn.00401e00
jmp 0x41af69
xor eax, eax
test eax, eax
mov byte [esp + 0xc20], 8
mov dword [esp + 0x24], eax
je 0x41af90
push 2
mov ecx, eax
call fcn.004017d0
jmp 0x41af8c
cmp dword [eax + 8], 0
je 0x41af90
call esi
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x38]
cmp dword [eax + 8], 0
je 0x41afe3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.OpenWindow
call fcn.00401da0
lea eax, [esp + 0x164]
push eax
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41afc8
mov eax, dword [eax + 4]
jmp 0x41afcb
add eax, 4
mov ecx, dword [esp + 0x20]
push eax
push 0x42d
push 0
push ecx
call ebx
lea ecx, [esp + 0x148]
jmp 0x41b030
cmp byte [eax + 0x6d], 0
jne 0x41b039
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push 0x449500
call fcn.00401da0
lea edx, [esp + 0x490]
push edx
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b017
mov eax, dword [eax + 4]
jmp 0x41b01a
add eax, 4
push eax
mov eax, dword [esp + 0x4c]
push 0x420
push 0
push eax
call ebx
lea ecx, [esp + 0x474]
call fcn.00401b20
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 8]
test eax, eax
mov edx, str.CloseWindow
jne 0x41b078
mov esi, dword [esp + 0x48]
mov edx, str.DeleteItem
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push edx
call fcn.00401da0
lea ecx, [esp + 0x19c]
push ecx
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b07e
mov eax, dword [eax + 4]
jmp 0x41b081
mov esi, dword [esp + 0x20]
jmp 0x41b04e
add eax, 4
push eax
push 0x42e
push 0
push esi
call ebx
lea ecx, [esp + 0x180]
call fcn.00401b20
cmp byte [edi + 0x9e], 0
jne 0x41b0ab
mov edx, dword [esp + 0x38]
cmp byte [edx + 0x6c], 0
je 0x41b0c7
mov eax, dword [esp + 0x38]
cmp dword [eax + 8], 0
jne 0x41b0c7
mov ecx, dword [esp + 0x48]
push 1
push 0x42e
push ecx
call dword [sym.imp.USER32.dll_EnableMenuItem]
call dword [sym.imp.USER32.dll_CreatePopupMenu]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.AddItem
mov dword [esp + 0x5c], eax
call fcn.00401da0
lea edx, [esp + 0x474]
lea esi, [edi + 0x74]
push edx
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b101
mov eax, dword [eax + 4]
jmp 0x41b104
add eax, 4
mov ecx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x40]
push eax
push 0x10
push ecx
call ebx
lea ecx, [esp + 0x458]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.ItemFile
call fcn.00401da0
lea edx, [esp + 0x1d4]
push edx
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b14c
mov eax, dword [eax + 4]
jmp 0x41b14f
add eax, 4
push eax
mov eax, dword [esp + 0x40]
push 0x421
push 0
push eax
call ebx
lea ecx, [esp + 0x1b8]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.ItemPath
call fcn.00401da0
lea ecx, [esp + 0x58c]
push ecx
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b197
mov eax, dword [eax + 4]
jmp 0x41b19a
add eax, 4
mov edx, dword [esp + 0x3c]
push eax
push 0x422
push 0
push edx
call ebx
lea ecx, [esp + 0x570]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.ItemBlank
call fcn.00401da0
lea eax, [esp + 0x20c]
push eax
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b1e2
mov eax, dword [eax + 4]
jmp 0x41b1e5
add eax, 4
mov ecx, dword [esp + 0x3c]
push eax
push 0x427
push 0
push ecx
call ebx
lea ecx, [esp + 0x1f0]
call fcn.00401b20
mov edx, dword [esp + 0x3c]
push 0x447624
push 0
push 0x800
push edx
call ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.ItemSeparator
call fcn.00401da0
lea eax, [esp + 0x4ac]
push eax
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b240
mov eax, dword [eax + 4]
jmp 0x41b243
add eax, 4
mov ecx, dword [esp + 0x3c]
push eax
push 0x423
push 0
push ecx
call ebx
lea ecx, [esp + 0x490]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.ItemRecycleBin
call fcn.00401da0
lea edx, [esp + 0x244]
push edx
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b28b
mov eax, dword [eax + 4]
jmp 0x41b28e
add eax, 4
push eax
mov eax, dword [esp + 0x40]
push 0x425
push 0
push eax
call ebx
lea ecx, [esp + 0x228]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push str.ItemDockSettings
call fcn.00401da0
lea ecx, [esp + 0x634]
push ecx
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b2d6
mov eax, dword [eax + 4]
jmp 0x41b2d9
add eax, 4
mov edx, dword [esp + 0x3c]
push eax
push 0x424
push 0
push edx
call ebx
lea ecx, [esp + 0x618]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x48], esp
push 0x449418
call fcn.00401da0
lea eax, [esp + 0x27c]
push eax
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b321
mov eax, dword [eax + 4]
jmp 0x41b324
add eax, 4
mov ecx, dword [esp + 0x3c]
push eax
push 0x426
push 0
push ecx
call ebx
lea ecx, [esp + 0x260]
call fcn.00401b20
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x4486c8
mov dword [esp + 0x38], 0
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x90], esp
push str.Docklets
mov byte [esp + 0xc60], 0xa
call fcn.00401da0
lea edx, [esp + 0xa8]
push edx
mov byte [esp + 0xc60], 8
call fcn.00426280
add esp, 0x40
mov eax, dword [esp + 0x70]
mov ecx, dword [eax]
lea edx, [esp + 0x6c]
mov eax, edx
mov byte [esp + 0xc20], 0xb
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], edx
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 0x70]
lea edx, [esp + 0x8c]
mov dword [esp + 0x90], ecx
push edx
lea ecx, [esp + 0x1c]
call fcn.00403890
test al, al
je 0x41b704
lea ecx, [esp + 0x18]
call fcn.00403de0
cmp byte [eax + 0x1c], 0
je 0x41b6f6
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x74], esp
push str..dll
call fcn.00401da0
lea ecx, [esp + 0x38]
mov byte [esp + 0xc40], 0xc
call fcn.00403de0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x68], esp
push eax
push str.Docklets_
push ecx
call fcn.00407bf0
lea edx, [esp + 0xc0]
add esp, 0xc
push edx
mov byte [esp + 0xc60], 0xb
call fcn.00426280
add esp, 0x40
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax]
lea edx, [esp + 0x78]
mov eax, edx
mov byte [esp + 0xc20], 0xd
mov dword [esp + 0x68], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x7c]
lea edx, [esp + 0x84]
mov dword [esp + 0x88], ecx
push edx
lea ecx, [esp + 0x68]
call fcn.00403890
test al, al
je 0x41b6e5
lea ecx, [esp + 0x64]
call fcn.00403de0
cmp byte [eax + 0x1d], 0
je 0x41b6d7
push 0x448388
lea ecx, [esp + 0x2d4]
call fcn.00401da0
mov esi, eax
push str.Docklets_
lea ecx, [esp + 0xf8]
mov byte [esp + 0xc24], 0xe
call fcn.00401da0
mov edi, eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xc20], 0xf
call fcn.00403de0
push eax
lea eax, [esp + 0x29c]
push edi
push eax
call fcn.00407b40
push esi
push eax
lea ecx, [esp + 0x4dc]
push ecx
mov byte [esp + 0xc38], 0x10
call fcn.00407b40
add esp, 0x18
mov esi, eax
lea ecx, [esp + 0x64]
mov byte [esp + 0xc20], 0x11
call fcn.00403de0
push eax
lea edx, [esp + 0x6ac]
push esi
push edx
call fcn.00407b40
add esp, 0xc
lea ecx, [esp + 0x4c8]
call fcn.00401b20
lea ecx, [esp + 0x298]
call fcn.00401b20
lea ecx, [esp + 0xf4]
call fcn.00401b20
lea ecx, [esp + 0x2d0]
mov byte [esp + 0xc20], 0x16
call fcn.00401b20
cmp dword [esp + 0x6c0], 8
mov eax, dword [esp + 0x6ac]
jae 0x41b579
lea eax, [esp + 0x6ac]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
mov dword [esp + 0x2c], edi
je 0x41b6bf
push str.OnGetInformation
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x41b6b8
push 0x103
lea eax, [esp + 0xb09]
push 0
push eax
mov byte [esp + 0xb10], 0
call fcn.00431940
push 0x103
lea ecx, [esp + 0x6f5]
push 0
push ecx
mov byte [esp + 0x6fc], 0
call fcn.00431940
push 0x103
lea edx, [esp + 0x911]
push 0
push edx
mov byte [esp + 0x918], 0
call fcn.00431940
add esp, 0x24
lea eax, [esp + 0x8f4]
push eax
lea ecx, [esp + 0x34]
push ecx
lea edx, [esp + 0x6ec]
push edx
lea eax, [esp + 0xb10]
push eax
call esi
mov esi, dword [esp + 0x14]
test esi, esi
lea edi, [esi + 0x499]
mov dword [esp + 0x14], edi
jne 0x41b63e
mov ecx, dword [esp + 0x3c]
push 0x447624
push esi
push 0x800
push ecx
call ebx
sub esp, 0x1c
lea edx, [esp + 0xb20]
mov ecx, esp
mov dword [esp + 0x70], esp
push edx
call fcn.00401790
lea eax, [esp + 0x51c]
push eax
call fcn.0042f4e0
add esp, 0x20
cmp dword [eax + 0x18], 8
jb 0x41b66f
mov eax, dword [eax + 4]
jmp 0x41b672
add eax, 4
mov ecx, dword [esp + 0x3c]
push eax
push edi
push 0
push ecx
call ebx
lea ecx, [esp + 0x500]
call fcn.00401b20
lea edx, [esp + 0x14]
push edx
lea ecx, [esp + 0x68c]
call fcn.00419df0
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x6b0]
push ecx
mov ecx, eax
call fcn.00401bd0
mov edi, dword [esp + 0x2c]
add esi, 1
mov dword [esp + 0x14], esi
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [esp + 0x6a8]
mov byte [esp + 0xc20], 0xd
call fcn.00401b20
mov edi, dword [esp + 0x40]
lea ecx, [esp + 0x64]
call fcn.0042ae70
jmp 0x41b465
lea ecx, [esp + 0x78]
mov byte [esp + 0xc20], 0xb
call fcn.004133d0
lea ecx, [esp + 0x18]
call fcn.0042ae70
jmp 0x41b3b5
lea ecx, [esp + 0x6c]
mov byte [esp + 0xc20], 8
call fcn.004133d0
mov edx, dword [esp + 0x48]
push 0x447624
push 0
push 0x800
push edx
call ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x448b08
call fcn.00401da0
lea eax, [esp + 0x324]
lea esi, [edi + 0x74]
push eax
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b758
mov eax, dword [eax + 4]
jmp 0x41b75b
add eax, 4
mov ecx, dword [esp + 0x48]
push eax
push 0x41f
push 0
push ecx
call ebx
lea ecx, [esp + 0x308]
call fcn.00401b20
call dword [sym.imp.USER32.dll_CreatePopupMenu]
mov dword [esp + 0x40], eax
call fcn.00429840
cmp eax, 1
mov dword [esp + 0x14], eax
jle 0x41b968
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x4478f8
call fcn.00401da0
lea edx, [esp + 0x5e0]
push edx
mov ecx, esi
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b7bf
mov eax, dword [eax + 4]
jmp 0x41b7c2
add eax, 4
mov ecx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x44]
push eax
push 0x10
push ecx
call ebx
lea ecx, [esp + 0x5c4]
call fcn.00401b20
or esi, 0xffffffff
cmp dword [esp + 0x14], esi
jle 0x41b94e
xor eax, eax
mov dword [esp + 0x6c0], 7
mov dword [esp + 0x6bc], eax
mov word [esp + 0x6ac], ax
cmp esi, 0xffffffff
mov byte [esp + 0xc20], 0x17
jne 0x41b826
push 0x4486c8
lea ecx, [esp + 0x6ac]
call fcn.00407720
jmp 0x41b867
lea edx, [esi + 1]
push edx
lea eax, [esp + 0x344]
push eax
call fcn.0042f950
add esp, 8
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x6b4]
mov byte [esp + 0xc2c], 0x18
call fcn.00401bd0
lea ecx, [esp + 0x340]
mov byte [esp + 0xc20], 0x17
call fcn.00401b20
lea ecx, [esp + 0x6a8]
push ecx
push 0x44876c
lea ecx, [esp + 0x3b8]
call fcn.00401da0
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.MonitorList
mov byte [esp + 0xc48], 0x19
call fcn.00401da0
lea edx, [esp + 0x674]
push edx
lea ecx, [edi + 0x74]
call fcn.004308a0
push eax
lea eax, [esp + 0x384]
push eax
mov byte [esp + 0xc30], 0x1a
call fcn.00407b40
add esp, 0xc
push eax
lea ecx, [esp + 0x540]
push ecx
mov byte [esp + 0xc2c], 0x1b
call fcn.00407b40
add esp, 0xc
cmp dword [eax + 0x18], 8
jb 0x41b8e9
mov eax, dword [eax + 4]
jmp 0x41b8ec
add eax, 4
push eax
mov eax, dword [esp + 0x44]
lea edx, [esi + 0x434]
push edx
push 0
push eax
call ebx
lea ecx, [esp + 0x538]
call fcn.00401b20
lea ecx, [esp + 0x378]
call fcn.00401b20
lea ecx, [esp + 0x650]
call fcn.00401b20
lea ecx, [esp + 0x3b0]
call fcn.00401b20
lea ecx, [esp + 0x6a8]
mov byte [esp + 0xc20], 8
call fcn.00401b20
add esi, 1
cmp esi, dword [esp + 0x14]
jl 0x41b7ea
mov ecx, dword [edi + 0x8c]
mov edx, dword [esp + 0x40]
push 8
add ecx, 0x434
push ecx
push edx
call dword [sym.imp.USER32.dll_CheckMenuItem]
call dword [sym.imp.USER32.dll_CreatePopupMenu]
sub esp, 0x1c
mov esi, eax
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x4478ec
mov dword [esp + 0x4c], esi
call fcn.00401da0
lea eax, [esp + 0x43c]
push eax
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b9a2
mov eax, dword [eax + 4]
jmp 0x41b9a5
add eax, 4
mov ecx, dword [esp + 0x48]
push eax
push esi
push 0x10
push ecx
call ebx
lea ecx, [esp + 0x420]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push str.SideTop
call fcn.00401da0
lea edx, [esp + 0x404]
push edx
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41b9ea
mov eax, dword [eax + 4]
jmp 0x41b9ed
add eax, 4
push eax
push 0x429
push 0
push esi
call ebx
lea ecx, [esp + 0x3e8]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push str.SideBottom
call fcn.00401da0
lea eax, [esp + 0x458]
push eax
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41ba32
mov eax, dword [eax + 4]
jmp 0x41ba35
add eax, 4
push eax
push 0x42b
push 0
push esi
call ebx
lea ecx, [esp + 0x43c]
call fcn.00401b20
push 0x447624
push 0
push 0x800
push esi
call ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push str.SideLeft
call fcn.00401da0
lea ecx, [esp + 0x12c]
push ecx
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41ba89
mov eax, dword [eax + 4]
jmp 0x41ba8c
add eax, 4
push eax
push 0x428
push 0
push esi
call ebx
lea ecx, [esp + 0x110]
call fcn.00401b20
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push str.SideRight
call fcn.00401da0
lea edx, [esp + 0x148]
push edx
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41bad1
mov eax, dword [eax + 4]
jmp 0x41bad4
add eax, 4
push eax
push 0x42a
push 0
push esi
call ebx
lea ecx, [esp + 0x12c]
call fcn.00401b20
mov eax, dword [edi + 0x90]
cmp eax, 3
ja case.default.0x41baf6
jmp dword [eax*4 + 0x41d740]
push 8
push 0x429
jmp 0x41bb1f
push 8
push 0x42b
jmp 0x41bb1f
push 8
push 0x428
jmp 0x41bb1f
push 8
push 0x42a
push esi
call dword [sym.imp.USER32.dll_CheckMenuItem]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x4479e4
call fcn.00401da0
lea eax, [esp + 0x180]
push eax
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41bb54
mov eax, dword [eax + 4]
jmp 0x41bb57
add eax, 4
mov esi, dword [esp + 0x48]
push eax
push 0x430
push 0
push esi
call ebx
lea ecx, [esp + 0x164]
call fcn.00401b20
cmp byte [edi + 0x9f], 0
je 0x41bb89
push 8
push 0x430
push esi
call dword [sym.imp.USER32.dll_CheckMenuItem]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x4479f8
call fcn.00401da0
lea ecx, [esp + 0x1b8]
push ecx
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41bbb7
mov eax, dword [eax + 4]
jmp 0x41bbba
add eax, 4
push eax
push 0x42c
push 0
push esi
call ebx
lea ecx, [esp + 0x19c]
call fcn.00401b20
cmp byte [edi + 0x9e], 0
je 0x41bbe8
push 8
push 0x42c
push esi
call dword [sym.imp.USER32.dll_CheckMenuItem]
push 0x447624
push 0
push 0x800
push esi
call ebx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x4c], esp
push 0x449418
call fcn.00401da0
lea edx, [esp + 0x1f0]
push edx
lea ecx, [edi + 0x74]
call fcn.004308a0
cmp dword [eax + 0x18], 8
jb 0x41bc25
mov eax, dword [eax + 4]
jmp 0x41bc28
add eax, 4
push eax
push 0x432
push 0
push esi
call ebx
lea ecx, [esp + 0x1d4]
call fcn.00401b20
cmp dword [esp + 0x20], 0
je 0x41bc6a
mov eax, dword [esp + 0x20]
push 0x447624
push 0
push 0x800
push eax
call ebx
push 0x447cb4
push esi
mov esi, dword [esp + 0x28]
push 0x10
push esi
call ebx
jmp 0x41bc6e
mov esi, dword [esp + 0x50]
push 1
push 0
mov ecx, edi
call fcn.0040f660
mov ecx, dword [esp + 0x4c]
push ecx
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov ebx, dword [esp + 0x38]
test ebx, ebx
je 0x41bc98
mov dl, byte [edi + 0x180]
mov dword [edi + 0x18], ebx
mov byte [edi + 0x1c], dl
call fcn.00427500
test al, al
mov byte [esp + 0x2b], al
je 0x41bcaa
call fcn.004274e0
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
push 0
push eax
push 0
push ecx
push edx
push 0x4102
push esi
call dword [sym.imp.USER32.dll_TrackPopupMenu]
cmp byte [esp + 0x2b], 0
mov esi, eax
je 0x41bcdc
push 0xffffffffffffffff
call fcn.004274b0
add esp, 4
test ebx, ebx
mov byte [edi + 0x302], 0
je 0x41bcf7
push ebx
mov ecx, edi
call fcn.00405140
test al, al
je 0x41c557
cmp esi, 0x41f
jg 0x41bd3d
je 0x41bd2f
test esi, esi
je 0x41c557
lea ecx, [esi - 0x433]
cmp ecx, 0x65
ja 0x41c4f2
push 1
push 0
add esi, 0xfffffbcc
push esi
mov ecx, edi
call fcn.004108f0
jmp 0x41c557
push 0
mov ecx, edi
call fcn.00410320
jmp 0x41c557
lea eax, [esi - 0x420]
cmp eax, 0x12
ja case.0x41bd48.1071
jmp dword [eax*4 + 0x41d750]
cmp byte [ebx + 0x24], 0
je 0x41bd64
mov ecx, ebx
call fcn.004212a0
test al, al
jne 0x41c557
push ebx
lea eax, [esp + 0x210]
push eax
mov ecx, edi
call fcn.00410590
lea ecx, [esp + 0x20c]
call fcn.00401b20
jmp 0x41c557
cmp byte [edi + 0x9f], 0
push 1
sete cl
push ecx
mov ecx, edi
call fcn.004120c0
jmp 0x41c557
cmp byte [edi + 0x9e], 0
sete dl
mov byte [edi + 0x9e], dl
jmp 0x41c557
push 1
push 0
mov ecx, edi
call fcn.00410870
jmp 0x41c557
push 1
push 1
mov ecx, edi
call fcn.00410870
jmp 0x41c557
push 1
push 2
mov ecx, edi
call fcn.00410870
jmp 0x41c557
push 1
push 3
mov ecx, edi
call fcn.00410870
jmp 0x41c557
xor esi, esi
push 0x206
lea eax, [esp + 0x6ea]
push esi
push eax
mov word [esp + 0x6f0], si
call fcn.00431940
push 0x58
lea ecx, [esp + 0xac]
push esi
push ecx
call fcn.00431940
mov edx, dword [esp + 0x64]
add esp, 0x18
lea ecx, [esp + 0x9c]
lea eax, [esp + 0x6e4]
push ecx
mov dword [esp + 0xa0], 0x58
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], str.All_Files
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], 0x104
mov dword [esp + 0xd4], 0x2281008
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameW]
test eax, eax
je 0x41c557
push 4
push 1
sub esp, 0x1c
lea edx, [esp + 0x708]
mov ecx, esp
mov dword [esp + 0x54], esp
push edx
call fcn.00401da0
push edi
call fcn.00425c30
add esp, 0x20
push eax
mov ecx, edi
call fcn.0040e370
jmp 0x41c557
xor eax, eax
mov dword [esp + 0x6d0], eax
mov dword [esp + 0x6c4], eax
mov dword [esp + 0x6c8], eax
mov dword [esp + 0x6cc], eax
mov dword [esp + 0x6d4], eax
mov dword [esp + 0x6d8], eax
mov dword [esp + 0x6dc], eax
mov dword [esp + 0x6e0], eax
mov dword [esp + 0x6d0], eax
lea eax, [esp + 0x6c4]
push eax
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
mov esi, eax
test esi, esi
je 0x41c557
push 4
push 1
push esi
push edi
call fcn.00424cf0
add esp, 8
push eax
mov ecx, edi
call fcn.0040e370
push esi
call dword [sym.imp.SHELL32.dll_ILFree]
jmp 0x41c557
push 0x1c4
call fcn.00431acd
mov esi, eax
add esp, 4
mov dword [esp + 0x30], esi
test esi, esi
mov bl, 0x1c
mov byte [esp + 0xc20], bl
je 0x41c011
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x70], esp
push 0x447624
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x8c], esp
push 0x447624
mov byte [esp + 0xc60], 0x1d
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 0x447624
mov byte [esp + 0xc7c], 0x1e
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xb0], esp
push 0x447624
mov byte [esp + 0xc9c], 0x1f
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xf8], esp
push 0x447624
mov byte [esp + 0xcb8], 0x20
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xc8], esp
push 0x447624
mov byte [esp + 0xcd4], 0x21
call fcn.00401da0
push edi
mov ecx, esi
mov byte [esp + 0xcd4], bl
call fcn.004241d0
mov esi, eax
jmp 0x41c013
xor esi, esi
push str.DefaultsDefaultIconsUnknown.png
lea ecx, [esi + 0x74]
mov byte [esp + 0xc24], 8
call fcn.00407720
push 0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.DefaultsDefaultIconsUnknown.png
call fcn.00401da0
lea ecx, [esp + 0xb8]
push ecx
call fcn.00428550
add esp, 0x28
push eax
lea ecx, [esi + 0x144]
mov byte [esp + 0xc24], 0x22
call fcn.00420e00
lea ecx, [esp + 0x94]
mov byte [esp + 0xc20], 8
call fcn.0041ff50
mov ecx, esi
call fcn.004226f0
push 4
push 1
push esi
mov ecx, edi
call fcn.0040e370
jmp 0x41c557
push 4
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x3c], esp
push 0x447624
call fcn.00401da0
push 1
jmp 0x41c52a
push 0xa
call fcn.0042e760
add esp, 4
test al, al
je 0x41c557
push 0x1c4
call fcn.00431acd
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
test esi, esi
mov bl, 0x23
mov byte [esp + 0xc20], bl
je 0x41c19f
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x80], esp
push 0x447624
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 0x447624
mov byte [esp + 0xc60], 0x24
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xac], esp
push 0x447624
mov byte [esp + 0xc7c], 0x25
call fcn.00401da0
push 1
sub esp, 0x1c
mov edx, esp
mov dword [esp + 0xc8], esp
push 0xa
push edx
mov byte [esp + 0xca0], 0x26
call fcn.0042f010
sub esp, 0x14
mov eax, esp
mov dword [esp + 0xa8], esp
push 0xa
push eax
mov byte [esp + 0xcbc], 0x27
call fcn.0042f150
sub esp, 0x14
mov ecx, esp
mov dword [esp + 0xe8], esp
push str.IconsRecycle_Bin.png
mov byte [esp + 0xcd4], 0x28
call fcn.00401da0
push edi
mov ecx, esi
mov byte [esp + 0xcd4], bl
call fcn.004241d0
mov esi, eax
jmp 0x41c1a1
xor esi, esi
push str.IconsRecycle_Bin__full_.png
lea ecx, [esi + 0x90]
mov byte [esp + 0xc24], 8
call fcn.00407720
push 4
push 1
push esi
mov ecx, edi
call fcn.0040e370
jmp 0x41c557
push 0x1c4
call fcn.00431acd
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
test esi, esi
mov byte [esp + 0xc20], 0x29
je 0x41c2d8
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x80], esp
push 0x447624
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 0x447624
mov byte [esp + 0xc60], 0x2a
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xac], esp
push 0x447624
mov byte [esp + 0xc7c], 0x2b
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xc8], esp
push str._Settings_
mov byte [esp + 0xc9c], 0x2c
call fcn.00401da0
sub esp, 0x1c
mov ebx, esp
mov dword [esp + 0xa8], esp
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xe8], esp
push 0x448b08
mov byte [esp + 0xcd4], 0x2d
call fcn.00401da0
push ebx
lea ecx, [edi + 0x74]
call fcn.004308a0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xe8], esp
push str.IconsRocketDock_Options.png
mov byte [esp + 0xcd4], 0x2e
call fcn.00401da0
push edi
mov ecx, esi
mov byte [esp + 0xcd4], 0x29
call fcn.004241d0
push 4
push 1
push eax
mov ecx, edi
mov byte [esp + 0xc2c], 8
call fcn.0040e370
jmp 0x41c557
xor eax, eax
push 4
push 1
push eax
mov ecx, edi
mov byte [esp + 0xc2c], 8
call fcn.0040e370
jmp 0x41c557
push 0x1c4
call fcn.00431acd
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
test esi, esi
mov byte [esp + 0xc20], 0x2f
je 0x41c2d8
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x80], esp
push 0x447624
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x6c], esp
push 0x447624
mov byte [esp + 0xc60], 0x30
call fcn.00401da0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xac], esp
push 0x447624
mov byte [esp + 0xc7c], 0x31
call fcn.00401da0
push 0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xc8], esp
push str._Quit_
mov byte [esp + 0xc9c], 0x32
call fcn.00401da0
sub esp, 0x1c
mov ebx, esp
mov dword [esp + 0xa8], esp
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xe8], esp
push 0x449418
mov byte [esp + 0xcd4], 0x33
call fcn.00401da0
push ebx
lea ecx, [edi + 0x74]
call fcn.004308a0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xe8], esp
push 0x449398
mov byte [esp + 0xcd4], 0x34
call fcn.00401da0
push edi
mov ecx, esi
mov byte [esp + 0xcd4], 0x2f
call fcn.004241d0
jmp 0x41c2da
mov ebx, dword [ebx + 8]
test ebx, ebx
je 0x41c557
push 1
push 1
push ebx
mov ecx, edi
call fcn.004118c0
jmp 0x41c557
mov eax, dword [ebx + 8]
test eax, eax
je 0x41c41e
push 0
push 0
push 0x10
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x41c557
push ebx
mov ecx, edi
call fcn.0040e7d0
mov ecx, ebx
call fcn.00421370
jmp 0x41c557
push 1
push 0x447624
push 0x447624
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x40], esp
push str.1.3.5
call fcn.00401790
lea ecx, [esp + 0x2dc]
push ecx
call fcn.0042f4e0
add esp, 0x20
mov esi, eax
push str.http:__www.punksoftware.com_download_projectRocketDockver
lea ecx, [esp + 0x28c]
mov byte [esp + 0xc30], 0x35
call fcn.00401da0
push esi
push eax
lea edx, [esp + 0x258]
push edx
mov byte [esp + 0xc38], 0x36
call fcn.00407b40
add esp, 0xc
cmp dword [eax + 0x18], 8
mov byte [esp + 0xc2c], 0x37
jb 0x41c4a9
mov eax, dword [eax + 4]
jmp 0x41c4ac
add eax, 4
push eax
mov eax, dword [edi + 0xc8]
push 0
push eax
mov ecx, edi
call fcn.00407df0
lea ecx, [esp + 0x244]
call fcn.00401b20
lea ecx, [esp + 0x27c]
call fcn.00401b20
lea ecx, [esp + 0x2b4]
mov byte [esp + 0xc20], 8
call fcn.00401b20
jmp 0x41c557
call fcn.004283d0
jmp 0x41c557
lea edx, [esi - 0x499]
cmp edx, 0x3e8
ja 0x41c53f
push 4
push 1
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x694]
mov dword [esp + 0x5c], esi
call fcn.00419df0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call fcn.00407120
push 0
push 0
push edi
call fcn.004246c0
add esp, 0x28
push eax
mov ecx, edi
call fcn.0040e370
jmp 0x41c557
cmp dword [esp + 0x24], 0
je 0x41c557
cmp dword [esp + 0x20], 0
je 0x41c557
mov ecx, dword [esp + 0x24]
push esi
call fcn.00401820
mov ecx, dword [esp + 0x3c]
mov ebx, dword [sym.imp.USER32.dll_DestroyMenu]
push ecx
call ebx
mov edx, dword [esp + 0x2c]
push edx
call ebx
mov eax, dword [esp + 0x40]
push eax
call ebx
mov eax, dword [esp + 0x20]
test eax, eax
je 0x41c57d
push eax
call ebx
mov ecx, dword [esp + 0x48]
push ecx
call ebx
mov esi, dword [esp + 0x24]
test esi, esi
je 0x41c59c
mov ecx, esi
call fcn.00401b50
push esi
call fcn.004317a4
add esp, 4
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
push 0x447624
call fcn.00401da0
mov ecx, edi
call fcn.00407f40
push 1
push 0
mov ecx, edi
call fcn.0040f660
lea ecx, [esp + 0x688]
mov dword [esp + 0xc20], 0xffffffff
call fcn.0041a280
jmp case.0x41c676.3
sub esi, 1
jne case.0x41c676.3
push ebx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
sete dl
mov ecx, edi
push edx
call fcn.004132d0
jmp case.0x41c676.3
cmp eax, 0x437
ja 0x41c63f
je 0x41c624
cmp eax, 0x31e
jne case.0x41c64d.1081
call fcn.00427aa0
mov byte [edi + 0x14], al
push 1
mov ecx, edi
jmp 0x41d58f
cmp byte [edi + 0x302], 0
jne case.0x41c676.3
push 0
push 0x200
mov ecx, edi
jmp 0x41d591
add eax, 0xfffffbc8
cmp eax, 0xa
ja case.0x41c64d.1081
jmp dword [eax*4 + 0x41d79c]
push 1
push esi
mov ecx, edi
call fcn.00410c40
jmp case.0x41c676.3
lea eax, [edx - 1]
cmp eax, 0xa
ja case.0x41c676.3
movzx eax, byte [eax + 0x41d7d4]
jmp dword [eax*4 + 0x41d7c8]
push edx
push esi
mov ecx, edi
call fcn.00411180
neg al
sbb eax, eax
neg eax
jmp 0x41d5af
push 0
push esi
mov ecx, edi
call fcn.00410c40
jmp case.0x41c676.3
xor ebx, ebx
mov dword [esp + 0x6a0], 7
mov dword [esp + 0x69c], ebx
mov word [esp + 0x68c], bx
mov ecx, dword [0x448474]
mov dx, word [0x448478]
push 0x202
lea eax, [esp + 0x8fe]
push ebx
push eax
mov dword [esp + 0xc2c], ebx
mov dword [esp + 0x900], ecx
mov word [esp + 0x904], dx
call fcn.00431940
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
push esi
mov dword [esp + 0x1c], ebx
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov edx, dword [esp + 0x14]
push edx
push ebx
push 0x410
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov ebx, eax
test ebx, ebx
je 0x41c738
push 0x104
lea eax, [esp + 0x8f8]
push eax
push 0
push ebx
call sub.PSAPI.DLL_GetModuleBaseNameW
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x448474]
mov dx, word [0x448478]
push 0x202
lea eax, [esp + 0x6ee]
push 0
push eax
mov dword [esp + 0x6f0], ecx
mov word [esp + 0x6f4], dx
call fcn.00431940
add esp, 0xc
push 0x104
lea ecx, [esp + 0x6e8]
push ecx
push esi
call dword [sym.imp.USER32.dll_GetClassNameW]
lea edx, [esp + 0x6e4]
push edx
lea ecx, [esp + 0x398]
call fcn.00401da0
mov esi, eax
lea eax, [esp + 0x8f4]
push eax
lea ecx, [esp + 0x360]
mov byte [esp + 0xc24], 1
call fcn.00401da0
push 0x449394
push eax
lea ecx, [esp + 0x32c]
push ecx
mov byte [esp + 0xc2c], 2
call fcn.00407a80
push esi
push eax
lea edx, [esp + 0x300]
push edx
mov byte [esp + 0xc38], 3
call fcn.00407b40
add esp, 0x18
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x694]
mov byte [esp + 0xc2c], 4
call fcn.00401bd0
lea ecx, [esp + 0x2ec]
call fcn.00401b20
lea ecx, [esp + 0x324]
call fcn.00401b20
lea ecx, [esp + 0x35c]
call fcn.00401b20
lea ecx, [esp + 0x394]
mov byte [esp + 0xc20], 0
call fcn.00401b20
push str.FILTER:
lea ecx, [esp + 0x408]
call fcn.00401da0
lea ecx, [esp + 0x688]
push ecx
push eax
lea edx, [esp + 0x3d4]
push edx
mov byte [esp + 0xc2c], 5
call fcn.00407b40
mov ebx, 8
add esp, 0xc
cmp dword [eax + 0x18], ebx
jb 0x41c878
mov eax, dword [eax + 4]
jmp 0x41c87b
add eax, 4
push eax
mov eax, dword [esp + 0x50]
push eax
call dword [sym.imp.USER32.dll_GetPropW]
lea ecx, [esp + 0x3cc]
mov esi, eax
call fcn.00401b20
lea ecx, [esp + 0x404]
mov byte [esp + 0xc20], 0
call fcn.00401b20
test esi, esi
push str.FILTER:
je 0x41c93e
lea ecx, [esp + 0x4e8]
call fcn.00401da0
lea ecx, [esp + 0x688]
push ecx
push eax
lea edx, [esp + 0x4b4]
push edx
mov byte [esp + 0xc2c], 6
call fcn.00407b40
add esp, 0xc
cmp dword [eax + 0x18], ebx
jb 0x41c8ed
mov eax, dword [eax + 4]
jmp 0x41c8f0
add eax, 4
push eax
mov eax, dword [esp + 0x50]
push eax
call dword [sym.imp.USER32.dll_RemovePropW]
lea ecx, [esp + 0x4ac]
call fcn.00401b20
lea ecx, [esp + 0x4e4]
mov byte [esp + 0xc20], 0
call fcn.00401b20
sub esp, 0x1c
lea edx, [esp + 0x6a4]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
call fcn.00407120
mov ecx, edi
call fcn.0040e230
jmp 0x41c9c3
lea ecx, [esp + 0x558]
call fcn.00401da0
lea ecx, [esp + 0x688]
push ecx
push eax
lea edx, [esp + 0x524]
push edx
mov byte [esp + 0xc2c], 7
call fcn.00407b40
add esp, 0xc
cmp dword [eax + 0x18], ebx
jb 0x41c975
mov eax, dword [eax + 4]
jmp 0x41c978
add eax, 4
push 1
push eax
mov eax, dword [esp + 0x54]
push eax
call dword [sym.imp.USER32.dll_SetPropW]
lea ecx, [esp + 0x51c]
call fcn.00401b20
lea ecx, [esp + 0x554]
mov byte [esp + 0xc20], 0
call fcn.00401b20
sub esp, 0x1c
lea edx, [esp + 0x6a4]
mov ecx, esp
mov dword [esp + 0x34], esp
push edx
call fcn.00407120
mov ecx, edi
call fcn.00411f70
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
push 0x447624
call fcn.00401da0
mov ecx, edi
call fcn.00407f40
lea ecx, [esp + 0x688]
call fcn.00401b20
jmp case.0x41c676.3
cmp byte [edi + 0xa4], 0
je case.0x41c676.3
test esi, esi
jne case.0x41aa86.4
mov eax, dword [edi + 0x38]
mov ecx, dword [eax]
lea esi, [edi + 0x34]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], esi
mov dword [esp + 0x58], esi
mov edx, dword [esi + 4]
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x60], edx
call fcn.00403890
test al, al
je 0x41ca73
lea ecx, [esp + 0x18]
call fcn.00403de0
mov ecx, dword [eax]
mov edx, dword [esp + 0x60]
cmp dword [ecx], edx
lea ecx, [esp + 0x18]
je 0x41ca4e
call fcn.0042ae70
jmp 0x41ca17
call fcn.00403de0
mov ebx, dword [eax]
lea ecx, [esp + 0x18]
call fcn.00403de0
push eax
mov ecx, esi
call fcn.00405200
test ebx, ebx
je 0x41ca73
push 1
mov ecx, ebx
call fcn.004063e0
push 1
mov ecx, edi
call fcn.0040cdb0
jmp case.0x41c676.3
mov ecx, edi
call fcn.004072f0
jmp case.0x41c676.3
push 0
push esi
call fcn.004023a0
add esp, 8
jmp case.0x41c676.3
push 1
mov ecx, edi
call fcn.004132d0
jmp case.0x41c676.3
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
push 0x447624
call fcn.00401da0
mov ecx, edi
call fcn.00407f40
jmp case.0x41c676.3
cmp byte [edi + 0x302], 0
mov ecx, edi
je 0x41cae0
test esi, esi
setne al
push eax
jmp 0x41d58f
test esi, esi
setne bl
push ebx
push 0x200
call fcn.0040f660
test al, al
jne case.0x41c676.3
push ebx
mov ecx, edi
jmp 0x41d58f
mov eax, dword [edi + 0x30c]
test eax, eax
je 0x41cd90
cmp dword [ebp + 0x10], eax
jne 0x41cd90
mov ecx, dword [esp + 0x34]
mov eax, ecx
sub eax, 2
je 0x41cce3
sub eax, 4
je 0x41cbb0
sub eax, 0x8000
jne 0x41cd04
mov eax, dword [edi + 0x44]
mov ecx, dword [eax]
lea esi, [edi + 0x40]
mov eax, esi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
lea esp, [esp]
test eax, eax
mov ebx, dword [esi + 4]
je 0x41cb5b
cmp eax, esi
je 0x41cb60
call fcn.00431cf0
cmp dword [esp + 0x1c], ebx
je 0x41cd10
lea ecx, [esp + 0x18]
call fcn.00403de0
mov edx, dword [eax]
cmp dword [edx + 8], 0
je 0x41cba1
lea ecx, [esp + 0x18]
call fcn.00403de0
mov eax, dword [eax]
mov ecx, dword [esp + 0x60]
cmp dword [eax + 8], ecx
jne 0x41cba1
lea ecx, [esp + 0x18]
call fcn.00403de0
mov ecx, dword [eax]
push 1
call fcn.00423170
lea ecx, [esp + 0x18]
call fcn.0042ae70
mov eax, dword [esp + 0x18]
jmp 0x41cb50
mov esi, dword [esp + 0x60]
push str.RD_HAS_MIN
push esi
call dword [sym.imp.USER32.dll_GetPropW]
test eax, eax
je 0x41cd10
mov eax, dword [edi + 0x44]
mov edx, dword [eax]
mov ebx, dword [sym.imp.USER32.dll_GetWindowTextW]
lea ecx, [edi + 0x40]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x58], ecx
mov eax, dword [edi + 0x44]
lea ecx, [esp + 0x58]
push ecx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x60], eax
call fcn.00403890
test al, al
je 0x41cd10
lea ecx, [esp + 0x18]
call fcn.00403de0
mov edx, dword [eax]
cmp dword [edx + 8], esi
jne 0x41ccd5
mov eax, dword [0x448474]
mov cx, word [0x448478]
push 0x202
lea edx, [esp + 0x6ee]
push 0
push edx
mov dword [esp + 0x6f0], eax
mov word [esp + 0x6f4], cx
call fcn.00431940
add esp, 0xc
push 0x104
lea eax, [esp + 0x6e8]
push eax
push esi
call ebx
lea ecx, [esp + 0x18]
call fcn.00403de0
mov edx, dword [eax]
lea ecx, [esp + 0x6e4]
push ecx
add edx, 0xb0
push edx
call fcn.00405470
add esp, 8
test al, al
je 0x41ccd5
lea ecx, [esp + 0x18]
call fcn.00403de0
lea ecx, [esp + 0x6e4]
push ecx
mov ecx, dword [eax]
add ecx, 0xb0
call fcn.00407720
lea ecx, [esp + 0x18]
call fcn.00403de0
mov ecx, dword [eax]
call fcn.004226f0
lea ecx, [esp + 0x18]
call fcn.00403de0
mov edx, dword [eax]
add edx, 0x15c
cmp dword [edi + 0xd8], edx
jne 0x41ccd5
push 1
mov ecx, edi
mov dword [edi + 0xd8], 0
call fcn.00402560
lea ecx, [esp + 0x18]
call fcn.0042ae70
jmp 0x41cbe2
mov esi, dword [esp + 0x60]
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x41cd10
push eax
push esi
push 0x43a
mov eax, ebx
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x41cd10
cmp ecx, 0x8004
je 0x41cd90
mov eax, dword [edi + 0x44]
mov esi, dword [eax]
lea ebx, [edi + 0x40]
jmp 0x41cd20
cmp ebx, ebx
mov ecx, dword [ebx + 4]
mov dword [esp + 0x5c], ecx
je 0x41cd30
call fcn.00431cf0
cmp esi, dword [esp + 0x5c]
je 0x41cd90
cmp esi, dword [ebx + 4]
jne 0x41cd40
call fcn.00431cf0
mov edx, dword [esi + 8]
cmp dword [edx + 8], 0
je 0x41cd82
cmp esi, dword [ebx + 4]
jne 0x41cd53
call fcn.00431cf0
mov eax, dword [esi + 8]
mov ecx, dword [eax + 8]
push str.RD_HAS_MIN
push ecx
call dword [sym.imp.USER32.dll_GetPropW]
test eax, eax
je 0x41cd82
cmp esi, dword [ebx + 4]
jne 0x41cd73
call fcn.00431cf0
mov edx, dword [esi + 8]
mov eax, dword [edx + 8]
push eax
call fcn.004021a0
add esp, 4
cmp esi, dword [ebx + 4]
jne 0x41cd8c
call fcn.00431cf0
mov esi, dword [esi]
jmp 0x41cd20
cmp byte [edi + 5], 0
jne case.0x41c676.3
mov eax, dword [ebp + 0x10]
cmp eax, 0x464
jne 0x41cdcd
cmp byte [edi + 0x9e], 0
jne 0x41aa5f
push 0
push 0
mov ecx, edi
mov byte [edi + 0x17a], 1
call fcn.0040f660
mov eax, 1
jmp 0x41d5af
cmp eax, 0x466
jne 0x41cde2
mov byte [edi + 0x17a], 0
mov ecx, edi
jmp 0x41d58d
cmp eax, 0x465
jne case.0x41c676.3
cmp byte [edi + 0x178], 0
mov byte [esp + 0x2b], 0
jne 0x41ce0d
push 0
mov ecx, edi
call fcn.00405050
cmp eax, 1
jge 0x41d569
mov esi, dword [esp + 0x34]
mov ebx, dword [esi + 4]
mov eax, dword [edi + 0x17c]
add ebx, esi
cmp byte [eax + 0x6c], 0
mov dword [esp + 0x20], ebx
jne 0x41d4ae
cmp byte [eax + 0x6d], 0
jne 0x41d4ae
cmp byte [eax + 0x24], 0
je 0x41cf67
cmp byte [eax + 0x71], 0
je 0x41d569
xor esi, esi
lea ecx, [esp + 0x58]
push esi
push ecx
mov byte [esp + 0x4f], 0
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], esi
call fcn.00425f20
mov edi, dword [esp + 0x3c]
add esp, 8
cmp dword [edi], esi
mov dword [esp + 0x24], eax
mov dword [esp + 0x14], esi
jbe 0x41cf57
lea ebx, [edi + 8]
lea esp, [esp]
mov esi, dword [ebx]
add esi, edi
cmp dword [esp + 0x20], 0
je 0x41ce99
mov edx, dword [esp + 0x20]
push esi
push edx
call dword [sym.imp.SHELL32.dll_ILCombine]
mov esi, eax
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x34], esp
push esi
push eax
call fcn.0042ea50
lea ecx, [esp + 0x6cc]
add esp, 8
push ecx
call fcn.0042f790
add esp, 0x20
cmp dword [esp + 0x6bc], 0
mov dword [esp + 0xc20], 0x38
jbe 0x41cefc
cmp dword [esp + 0x6c0], 0x10
mov eax, dword [esp + 0x6ac]
mov byte [esp + 0x47], 1
jae 0x41ceee
lea eax, [esp + 0x6ac]
mov edx, dword [esp + 0x24]
push eax
push edx
call fcn.00425f70
add esp, 8
cmp dword [esp + 0x20], 0
je 0x41cf0a
push esi
call dword [sym.imp.SHELL32.dll_ILFree]
lea ecx, [esp + 0x6a8]
mov dword [esp + 0xc20], 0xffffffff
call fcn.00401300
mov eax, dword [esp + 0x14]
add eax, 1
add ebx, 4
cmp eax, dword [edi]
mov dword [esp + 0x14], eax
jb 0x41ce80
cmp byte [esp + 0x47], 0
je 0x41cf57
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x40]
mov ecx, dword [ecx + 0x17c]
push eax
call fcn.00421270
jmp 0x41d569
mov edx, dword [esp + 0x24]
push edx
call dword [sym.imp.SHELL32.dll_DragFinish]
jmp 0x41d569
cmp dword [eax + 0xe4], 8
jb 0x41cf78
mov eax, dword [eax + 0xd0]
jmp 0x41cf7d
add eax, 0xd0
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
je 0x41d1ac
cmp dword [esi], 0
mov dword [esp + 0x14], 0
jbe 0x41d569
mov eax, dword [esp + 0x34]
add eax, 8
mov dword [esp + 0x24], eax
xor esi, esi
lea ebx, [ebx]
mov ecx, dword [esp + 0x24]
mov edi, dword [ecx]
mov eax, dword [esp + 0x20]
add edi, dword [esp + 0x34]
cmp eax, esi
je 0x41cfcc
push edi
push eax
call dword [sym.imp.SHELL32.dll_ILCombine]
mov edi, eax
lea edx, [esp + 0x6a8]
push edi
push edx
call fcn.0042ea50
push 0x20a
lea eax, [esp + 0x6f2]
push esi
push eax
mov dword [esp + 0xc34], 0x39
mov word [esp + 0x6f8], si
call fcn.00431940
push 0x20a
lea ecx, [esp + 0x90e]
push esi
push ecx
mov word [esp + 0x914], si
call fcn.00431940
push 0x448474
lea edx, [esp + 0x6cc]
push edx
lea eax, [esp + 0x5d0]
push eax
call fcn.00407a80
mov ebx, 8
add esp, 0x2c
cmp dword [eax + 0x18], ebx
jb 0x41d047
mov ecx, dword [eax + 4]
jmp 0x41d04a
lea ecx, [eax + 4]
lea edx, [esp + 0x6e4]
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, si
jne 0x41d051
lea ecx, [esp + 0x5a8]
call fcn.00401b20
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + 0x17c]
push 0x448474
add edx, 0xcc
push edx
lea eax, [esp + 0x604]
push eax
call fcn.00407a80
add esp, 0xc
cmp dword [eax + 0x18], ebx
jb 0x41d09e
mov ecx, dword [eax + 4]
jmp 0x41d0a1
lea ecx, [eax + 4]
lea edx, [esp + 0x8f4]
jmp 0x41d0b0
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, si
jne 0x41d0b0
lea ecx, [esp + 0x5fc]
call fcn.00401b20
mov ecx, dword [esp + 0x4c]
xor eax, eax
mov dword [esp + 0x688], eax
mov dword [esp + 0x698], eax
mov dword [esp + 0x69c], eax
mov dword [esp + 0x6a0], eax
mov dword [esp + 0x68c], eax
mov dword [esp + 0x690], eax
mov dword [esp + 0x694], eax
mov word [esp + 0x6a4], ax
mov dword [esp + 0x688], ecx
lea ecx, [esp + 0x688]
lea edx, [esp + 0x6e4]
lea eax, [esp + 0x8f4]
push ecx
mov dword [esp + 0x690], 2
mov dword [esp + 0x694], edx
mov dword [esp + 0x698], eax
mov word [esp + 0x69c], 0x40
mov dword [esp + 0x69e], esi
mov dword [esp + 0x6a2], esi
mov dword [esp + 0x6a6], esi
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
cmp dword [esp + 0x20], esi
je 0x41d174
push edi
call dword [sym.imp.SHELL32.dll_ILFree]
lea ecx, [esp + 0x6a8]
mov dword [esp + 0xc20], 0xffffffff
call fcn.00401b20
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x34]
add dword [esp + 0x24], 4
add eax, 1
cmp eax, dword [edx]
mov dword [esp + 0x14], eax
jb 0x41cfb0
jmp 0x41d569
mov eax, dword [edi + 0x17c]
cmp byte [eax + 0x70], 0
je 0x41d353
cmp dword [esi], 0
mov dword [esp + 0x14], 0
jbe 0x41d569
mov ecx, dword [esp + 0x34]
mov ebx, dword [esp + 0x20]
add ecx, 8
mov dword [esp + 0x24], ecx
xor edi, edi
mov edx, dword [esp + 0x24]
mov esi, dword [edx]
add esi, dword [esp + 0x34]
cmp ebx, edi
je 0x41d1f6
push esi
push ebx
call dword [sym.imp.SHELL32.dll_ILCombine]
mov esi, eax
lea eax, [esp + 0x6a8]
push esi
push eax
call fcn.0042ea50
push 0x20a
lea ecx, [esp + 0x6f2]
push edi
push ecx
mov dword [esp + 0xc34], 0x3a
mov word [esp + 0x6f8], di
call fcn.00431940
push 0x448474
lea edx, [esp + 0x6c0]
push edx
lea eax, [esp + 0x650]
push eax
call fcn.00407a80
add esp, 0x20
cmp dword [eax + 0x18], 8
jb 0x41d252
mov ecx, dword [eax + 4]
jmp 0x41d255
lea ecx, [eax + 4]
lea edx, [esp + 0x6e4]
lea esp, [esp]
movzx eax, word [ecx]
mov word [edx], ax
add ecx, 2
add edx, 2
cmp ax, di
jne 0x41d260
lea ecx, [esp + 0x634]
call fcn.00401b20
mov ecx, dword [esp + 0x4c]
xor eax, eax
mov dword [esp + 0x698], eax
mov dword [esp + 0x69c], eax
mov dword [esp + 0x6a0], eax
mov dword [esp + 0x688], eax
mov dword [esp + 0x68c], eax
mov dword [esp + 0x690], eax
mov dword [esp + 0x694], eax
mov word [esp + 0x6a4], ax
lea eax, [esp + 0x688]
lea edx, [esp + 0x6e4]
push eax
mov dword [esp + 0x68c], ecx
mov dword [esp + 0x690], 3
mov dword [esp + 0x694], edx
mov dword [esp + 0x698], edi
mov word [esp + 0x69c], 0x50
mov dword [esp + 0x69e], edi
mov dword [esp + 0x6a2], edi
mov dword [esp + 0x6a6], edi
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
cmp ebx, edi
je 0x41d31b
push esi
call dword [sym.imp.SHELL32.dll_ILFree]
lea ecx, [esp + 0x6a8]
mov dword [esp + 0xc20], 0xffffffff
call fcn.00401b20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x34]
add dword [esp + 0x24], 4
add eax, 1
cmp eax, dword [ecx]
mov dword [esp + 0x14], eax
jb 0x41d1de
jmp 0x41d569
push 0x447624
lea ecx, [esp + 0x6c8]
call fcn.00401da0
cmp dword [esi], 0
mov dword [esp + 0xc20], 0x3b
mov dword [esp + 0x24], 0
jbe 0x41d471
mov eax, dword [esp + 0x34]
add esi, 8
mov dword [esp + 0x20], esi
jmp 0x41d390
mov edx, dword [esp + 0x20]
mov esi, dword [edx]
add esi, eax
test ebx, ebx
je 0x41d3a6
push esi
push ebx
call dword [sym.imp.SHELL32.dll_ILCombine]
mov esi, eax
cmp dword [esp + 0x24], 0
jle 0x41d3be
push 0x44876c
lea ecx, [esp + 0x6c8]
call fcn.00407750
lea eax, [esp + 0x58c]
push esi
push eax
call fcn.0042ea50
push eax
lea ecx, [esp + 0x5ec]
push 0x44938c
push ecx
mov byte [esp + 0xc34], 0x3c
call fcn.00407bf0
push 0x447ccc
push eax
lea edx, [esp + 0x688]
push edx
mov byte [esp + 0xc40], 0x3d
call fcn.00407a80
add esp, 0x20
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x6d0]
mov byte [esp + 0xc2c], 0x3e
call fcn.00405f80
lea ecx, [esp + 0x66c]
call fcn.00401b20
lea ecx, [esp + 0x5e0]
call fcn.00401b20
lea ecx, [esp + 0x58c]
mov byte [esp + 0xc20], 0x3b
call fcn.00401b20
test ebx, ebx
je 0x41d455
push esi
call dword [sym.imp.SHELL32.dll_ILFree]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x34]
add dword [esp + 0x20], 4
add ecx, 1
cmp ecx, dword [eax]
mov dword [esp + 0x24], ecx
jb 0x41d390
sub esp, 0x1c
lea eax, [esp + 0x6e0]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
call fcn.00407120
mov ecx, dword [edi + 0x17c]
call fcn.004231d0
lea ecx, [esp + 0x6c4]
mov dword [esp + 0xc20], 0xffffffff
call fcn.00401b20
jmp 0x41d569
mov ecx, dword [esp + 0x34]
xor edi, edi
cmp dword [ecx], edi
jbe 0x41d569
mov byte [esp + 0x2b], 1
mov eax, dword [esp + 0x34]
mov esi, dword [eax + edi*4 + 8]
add esi, eax
mov eax, dword [esp + 0x20]
test eax, eax
je 0x41d4dd
push esi
push eax
call dword [sym.imp.SHELL32.dll_ILCombine]
mov esi, eax
mov edx, dword [esp + 0x40]
push esi
push edx
call fcn.00424cf0
mov ecx, dword [esp + 0x48]
add esp, 8
push 0
mov ebx, eax
push 1
push ebx
call fcn.0040e370
test edi, edi
jne 0x41d518
lea eax, [esp + 0x688]
push eax
add ebx, 0x178
push ebx
call fcn.00403030
add esp, 8
jmp 0x41d54c
fild dword [esp + 0x688]
fstp dword [ebx + 0x168]
fild dword [esp + 0x68c]
fstp dword [ebx + 0x16c]
fild dword [esp + 0x690]
fstp dword [ebx + 0x170]
fild dword [esp + 0x694]
fstp dword [ebx + 0x174]
cmp dword [esp + 0x20], 0
je 0x41d55a
push esi
call dword [sym.imp.SHELL32.dll_ILFree]
mov ecx, dword [esp + 0x34]
add edi, 1
cmp edi, dword [ecx]
jb 0x41d4c1
mov esi, dword [esp + 0x40]
mov ecx, esi
mov byte [esi + 0x17a], 0
call fcn.004059c0
cmp byte [esp + 0x2b], 0
je 0x41d58b
push 1
mov ecx, esi
call fcn.00404400
mov ecx, esi
push 0
push 0
call fcn.0040f660
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0x34]
mov ecx, dword [ebp + 0x10]
push edx
mov edx, dword [esp + 0x50]
push eax
push ecx
push edx
call dword [sym.imp.USER32.dll_DefWindowProcW]
mov ecx, dword [esp + 0xc18]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc00]
xor ecx, esp
call fcn.004320c7
mov esp, ebp
pop ebp
ret 0x14