Function at 0x405ff0
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x57e194
mov eax, dword fs:[0]
push eax
sub esp, 0x278
mov eax, dword [0x604e14]
xor eax, ebp
mov dword [ebp - 0x44], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x284], ecx
mov ecx, dword [ebp - 0x284]
call fcn.004f8a90
push str.CFF_Explorer_VIII
mov ecx, dword [ebp - 0x284]
call fcn.00533c0b
push 1
mov eax, dword [ebp - 0x284]
mov ecx, dword [eax + 0x1888]
push ecx
mov ecx, dword [ebp - 0x284]
call fcn.0040f000
mov edx, dword [ebp - 0x284]
mov eax, dword [edx + 0x20]
mov dword [0x606acc], eax
mov ecx, dword [ebp - 0x284]
mov edx, dword [ecx + 0x1754]
mov dword [0x606ad0], edx
push 0x66
mov eax, dword [ebp - 0x284]
push eax
push 0x19
push 0x64
push 0
push 0
lea ecx, [ebp - 0x27c]
call fcn.00506320
push eax
push 0x40000000
mov ecx, dword [ebp - 0x284]
add ecx, 0x1580
call fcn.004cfd30
push 0
push 0x74c
push 0
mov ecx, dword [ebp - 0x284]
add ecx, 0x1580
call fcn.004d8a00
push 0
push 0xd7
call fcn.0040ec60
mov ecx, eax
call fcn.0040f0a0
push eax
mov ecx, dword [ebp - 0x284]
add ecx, 0x1580
call fcn.004d8bb0
call fcn.004450a0
push 0x606830
push 0x104
mov ecx, dword [ebp - 0x284]
add ecx, 0x38c
push ecx
call fcn.0045eee0
add esp, 0xc
push str.ExtensionsCFF_Explorer
push 0x104
mov edx, dword [ebp - 0x284]
add edx, 0x38c
push edx
call fcn.0045ef70
add esp, 0xc
push 0x5facc8
mov eax, dword [ebp - 0x284]
add eax, 0x38c
push eax
mov ecx, dword [ebp - 0x284]
add ecx, 0x170
call fcn.0047d860
call fcn.0040e390
push 0x2c
push 0x606a48
mov ecx, dword [ebp - 0x284]
add ecx, 0x18a8
push ecx
call fcn.00556dd0
add esp, 0xc
mov edx, dword [ebp - 0x284]
add edx, 0x18a8
push edx
mov ecx, dword [ebp - 0x284]
call fcn.0052b3d3
cmp dword [0x606a74], 1
jne 0x40619a
mov ecx, dword [ebp - 0x284]
call fcn.0040df90
push 4
push 0
mov eax, dword [ebp - 0x284]
add eax, 0x1898
push eax
call fcn.0045b240
add esp, 0xc
push 0
mov ecx, dword [ebp - 0x284]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x284]
mov eax, dword [edx + 0x6c]
call eax
mov ecx, eax
call fcn.0040ef70
mov dword [ebp - 0x20], eax
push 0x400
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f27a0
lea ecx, [ebp - 0x25c]
call fcn.0040ec80
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x254]
call fcn.0040ec80
mov byte [ebp - 4], 1
push 0x8d
lea ecx, [ebp - 0x25c]
call fcn.0040eef0
push 0x8e
lea ecx, [ebp - 0x254]
call fcn.0040eef0
lea ecx, [ebp - 0x25c]
push ecx
push 0x592dd8
push 0x8003
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2ad0
push 0xffffffffffffffff
push str.Open__Safe_Mode_
push 0x7e
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push str.Close
push 0x8009
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push str.Close_All
push 0x8002
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push 0
push 0
push 0x800
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
lea edx, [ebp - 0x254]
push edx
push 0x592e28
push 0x8005
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2ad0
push 0
push 0x592e34
push 0x8007
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push 0
push 0
push 0x800
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push str.Load_CFF_Explorer_Script
push 0x65
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push 0
push 0
push 0x800
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push str.Exit
push 0x8012
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 1
mov eax, dword [ebp - 0x284]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x284]
mov eax, dword [edx + 0x6c]
call eax
mov ecx, eax
call fcn.0040ef70
mov dword [ebp - 0x20], eax
push 0x400
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f27a0
lea ecx, [ebp - 0x34]
call fcn.0040ec80
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2c]
call fcn.0040ec80
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0040ec80
mov byte [ebp - 4], 4
push 0x8f
lea ecx, [ebp - 0x34]
call fcn.0040eef0
push 0x90
lea ecx, [ebp - 0x2c]
call fcn.0040eef0
push 0xc2
lea ecx, [ebp - 0x264]
call fcn.0040eef0
push 0
push str.Enable_Shell_Extensions
push 0x800d
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push str.Disable_Shell_Extensions
push 0x800e
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
push 0
push 0
push 0
push 0x800
mov ecx, dword [ebp - 0x20]
call fcn.004f2a70
lea ecx, [ebp - 0x264]
push ecx
push 0x592ef0
push 0x81c
push 0
mov ecx, dword [ebp - 0x20]
call fcn.004f2ad0
push 0
push 0x8a
mov ecx, dword [ebp - 0x284]
add ecx, 0xa70
call fcn.004cc760
push 1
push 0x592f08
mov ecx, dword [ebp - 0x284]
add ecx, 0xa70
call fcn.004cd2d0
push 0
push 0x8b
mov ecx, dword [ebp - 0x284]
add ecx, 0xe20
call fcn.004cc760
push 1
push 0x592f14
mov ecx, dword [ebp - 0x284]
add ecx, 0xe20
call fcn.004cd2d0
push 0
mov ecx, dword [ebp - 0x284]
add ecx, 0xe20
call fcn.00533cef
mov edx, dword [ebp - 0x284]
cmp dword [edx + 0x1894], 1
jne 0x40649b
push 0
push 0xb1
mov ecx, dword [ebp - 0x284]
add ecx, 0x11d0
call fcn.004cc760
push 1
push 0x592f20
mov ecx, dword [ebp - 0x284]
add ecx, 0x11d0
call fcn.004cd2d0
jmp 0x4064c8
push 0
push 5
mov ecx, dword [ebp - 0x284]
add ecx, 0x11d0
call fcn.004cc760
push 1
push 0x592f44
mov ecx, dword [ebp - 0x284]
add ecx, 0x11d0
call fcn.004cd2d0
push 0xa
push 2
push 0x18
push 0x10
push 0x10
call dword [sym.imp.COMCTL32.dll_ImageList_Create]
mov ecx, dword [ebp - 0x284]
mov dword [ecx + 0x18d4], eax
push 0x94
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x18], eax
push 0
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp - 0x284]
mov ecx, dword [eax + 0x18d4]
push ecx
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov edx, dword [ebp - 0x18]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x95
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x18], eax
push 0
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x284]
mov edx, dword [ecx + 0x18d4]
push edx
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0xbd
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x14], eax
push 0
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x284]
mov eax, dword [edx + 0x18d4]
push eax
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0xbc
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x3c], eax
push 0
mov edx, dword [ebp - 0x3c]
push edx
mov eax, dword [ebp - 0x284]
mov ecx, dword [eax + 0x18d4]
push ecx
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov edx, dword [ebp - 0x3c]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x97
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x24], eax
push 0
mov eax, dword [ebp - 0x24]
push eax
mov ecx, dword [ebp - 0x284]
mov edx, dword [ecx + 0x18d4]
push edx
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov eax, dword [ebp - 0x24]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x98
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x38], eax
push 0
mov ecx, dword [ebp - 0x38]
push ecx
mov edx, dword [ebp - 0x284]
mov eax, dword [edx + 0x18d4]
push eax
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov ecx, dword [ebp - 0x38]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x99
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x40], eax
push 0
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x284]
mov ecx, dword [eax + 0x18d4]
push ecx
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov edx, dword [ebp - 0x40]
push edx
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0xcb
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x1c], eax
push 0
mov eax, dword [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x284]
mov edx, dword [ecx + 0x18d4]
push edx
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0xa7
call fcn.0040ec70
push eax
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x268], eax
push 0
mov ecx, dword [ebp - 0x268]
push ecx
mov edx, dword [ebp - 0x284]
mov eax, dword [edx + 0x18d4]
push eax
call dword [sym.imp.COMCTL32.dll_ImageList_Add]
mov ecx, dword [ebp - 0x268]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0
mov edx, dword [ebp - 0x284]
mov eax, dword [edx + 0x18d4]
push eax
mov ecx, dword [ebp - 0x284]
add ecx, 0x1734
call fcn.00505f50
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call fcn.0045f480
add esp, 4
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x4067fd
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.005560eb
add esp, 4
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x26c], 5
jb 0x4067d1
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + edx*2 - 2]
cmp ecx, 0x6b
je 0x40675d
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + edx*2 - 2]
cmp ecx, 0x4b
jne 0x4067d1
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + edx*2 - 4]
cmp ecx, 0x6e
je 0x406783
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + edx*2 - 4]
cmp ecx, 0x4e
jne 0x4067d1
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + edx*2 - 6]
cmp ecx, 0x6c
je 0x4067a9
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + edx*2 - 6]
cmp ecx, 0x4c
jne 0x4067d1
mov edx, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x10]
movzx ecx, word [eax + edx*2 - 8]
cmp ecx, 0x2e
jne 0x4067d1
lea edx, [ebp - 0x24c]
push edx
mov eax, dword [ebp - 0x10]
push eax
call fcn.0045fa30
add esp, 8
jmp 0x4067e9
push 0x104
mov ecx, dword [ebp - 0x10]
push ecx
lea edx, [ebp - 0x24c]
push edx
call fcn.00556264
add esp, 0xc
push 0
lea eax, [ebp - 0x24c]
push eax
mov ecx, dword [ebp - 0x284]
call fcn.0040c2d0
mov dword [ebp - 0x280], 1
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x264]
call fcn.0040eed0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2c]
call fcn.0040eed0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x34]
call fcn.0040eed0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x254]
call fcn.0040eed0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x25c]
call fcn.0040eed0
mov eax, dword [ebp - 0x280]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x44]
xor ecx, ebp
call fcn.00555ac5
mov esp, ebp
pop ebp
ret