Function at 0x46db95
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 8], 0x40d7f825
push 1
mov edi, ecx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 8], ebx
pop esi
jmp 0x46dc24
mov dword [ebp - 0xc], 0xffffffff
mov dword [ebp - 0xc], 0xfffffffd
cmp dword [ebp - 0xc], 0xffffffe8
jl 0x46dc1c
mov dword [ebp - 0x18], 0x357257e
mov dword [ebp - 0x14], 0xffffffff
cmp dword [ebp - 0x18], esi
jne 0x46dbe2
mov eax, ebx
cmp dword [ebp - 0x18], ebx
je 0x46dbe4
mov eax, esi
mov esi, dword [ebp - 0xc]
neg esi
push 1
sbb esi, esi
add esi, 3
neg esi
sbb esi, esi
xor edx, edx
inc esi
cmp eax, 0xba44
setg dl
xor ecx, ecx
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
cmp edx, eax
setle cl
imul esi, ecx
mov dword [ebp - 0x14], esi
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xffffffe8
pop esi
jge 0x46dbc8
cmp dword [ebp - 8], ebx
jne 0x46dc2a
inc dword [ebp - 8]
cmp dword [ebp - 8], 0x11
jl 0x46dbb4
push 0x3eff
push 0x4702
push esi
push 0x6051
push 0xc51
push 0x3d30
push esi
push 0x35c4
push edi
push 0x7c09
push 0x1a9b
push 0xcea
push esi
push 0x3d2f
push 0x2299
push esi
call fcn.0045fc0c
add esp, 0x40
mov dword [ebp - 0x18], 0x75c9
mov dword [ebp - 0x10], 0x2f4a8b10
lea ecx, [ebp - 0x44]
push 4
call fcn.0043492e
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x10], ebx
jmp 0x46dc9e
push dword [ebp - 0x10]
lea ecx, [ebp - 0x44]
call fcn.00434a1c
mov dword [eax], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x46dc8e
dec dword [ebp - 0xc]
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xfffffff3
jl 0x46ddbc
jmp 0x46dcb9
xor esi, esi
inc esi
mov dword [ebp - 8], 7
mov dword [ebp - 0x14], 5
mov dword [ebp - 0x10], ebx
jmp 0x46dcfa
mov dword [ebp - 0xc], ebx
jmp 0x46dcee
mov dword [ebp - 0x14], ebx
jmp 0x46dce0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x20], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x46dcd6
cmp dword [ebp - 0x1c], ebx
jne 0x46dcf4
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xc
jne 0x46dcd1
dec dword [ebp - 8]
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffffa
jge 0x46dccc
cmp dword [ebp - 8], ebx
je 0x46dd0a
cmp dword [ebp - 0x10], ebx
jne 0x46dd0c
mov esi, ebx
mov eax, dword [ebp - 8]
xor edx, edx
mov eax, dword [ebp - 8]
cmp eax, 1
setle dl
sub edx, dword [ebp - 8]
mov ecx, dword [ebp - 8]
neg edx
sbb edx, edx
xor eax, eax
inc edx
sub ecx, edx
sub ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0xc]
cmp ecx, 2
setne al
cmp esi, eax
je 0x46dd60
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x46ddaf
push ebx
push 0x60d
push 0x1cd9
push ebx
push 0x25f2
push 0xba8
push ebx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
jmp 0x46ddaf
mov dword [ebp - 0x10], 0x1f0ef2f3
xor edx, edx
mov dword [ebp - 0x14], 0xffffffff
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0xc]
imul eax, eax, 5
add eax, 0x5c958829
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
test eax, eax
mov eax, dword [ebp - 0x10]
setle dl
xor ecx, ecx
cmp eax, edx
setne cl
mov dword [ebp - 0x14], ecx
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x46ddaf
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffff3
jge 0x46dcb6
lea ecx, [ebp - 0x44]
call fcn.00434a00
push edi
call fcn.00423591
mov dword [ebp - 8], 0x3f4f46db
mov esi, eax
mov dword [ebp - 0xc], 0xfac1
pop ecx
mov dword [ebp - 0x18], ebx
jmp 0x46ddee
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x2c], 0xffffffff
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x46dde0
xor edi, edi
mov dword [ebp - 8], ebx
inc edi
cmp dword [ebp - 8], 2
jg 0x46de77
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x18], 0xc3707822
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 0x2c], ebx
je 0x46de4d
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x54], 0xffffffff
mov dword [ebp - 0x50], 0xffffffff
mov dword [ebp - 0x4c], 0xffffffff
mov dword [ebp - 0x48], 0xffffffff
inc dword [ebp - 0xc]
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x46de72
push ebx
push edi
push 0xf6f
push ebx
call dword [sym.imp.USER32.dll_SetMenuItemInfoW]
jmp 0x46de72
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x18], 0xc8b166c1
mov byte [ebp - 1], bl
cmp byte [ebp - 1], bl
je 0x46de65
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp eax, edi
setl cl
mov dword [ebp - 0x18], ecx
inc dword [ebp - 8]
jmp 0x46ddfa
mov dword [ebp - 0xc], 0xfffffff0
jmp 0x46df06
mov dword [ebp - 8], ebx
jmp 0x46defd
push 2
lea ecx, [ebp - 0x38]
call fcn.0043492e
mov dword [ebp - 0x18], ebx
jmp 0x46dea8
push dword [ebp - 0x18]
call fcn.00434a1c
mov dword [eax], 0x8ceef9a8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
lea ecx, [ebp - 0x38]
jl 0x46de97
push edi
call fcn.00434a1c
mov ecx, eax
push 2
pop edx
mov dword [ecx], edx
mov dword [ebp - 0x18], 0x67b38eb1
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], ebx
jl 0x46deee
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x10], ebx
jmp 0x46dee3
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x2c], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x46ded9
dec dword [ebp - 0x18]
jns 0x46decd
dec dword [ecx]
jns 0x46debe
lea ecx, [ebp - 0x38]
call fcn.00434a00
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jle 0x46de88
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x3c
jl 0x46de83
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret