Function at 0x40d8e8
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x422c93
call fcn.00414798
sub esp, 0x240
mov eax, dword [0x431d24]
push ebx
push esi
push edi
xor eax, ebp
xor edi, edi
mov dword [ebp - 0x10], eax
mov ebx, ecx
mov dword [ebp - 0x22c], edi
mov dword [ebp - 0x22c], ebp
push edi
push dword [ebp - 0x22c]
push str.int___thiscall_CCmdlineParser::_Parser_void_
call fcn.0040c3f0
mov esi, eax
add esp, 0xc
cmp esi, edi
mov eax, 0x428b78
jne 0x40d936
mov esi, eax
push edi
push edi
push edi
push ebx
push eax
push 0x428b44
push esi
lea ecx, [ebp - 0x24c]
call fcn.0040b233
mov dword [ebp - 4], edi
cmp esi, edi
jne 0x40d955
push ebp
pop ebp
cmp dword [ebx + 0x1c], edi
je 0x40dcf1
mov dword [ebp - 0x21c], edi
mov byte [ebp - 4], 1
mov dword [ebp - 0x22c], edi
mov byte [ebp - 4], 2
lea eax, [ebp - 0x220]
push eax
push dword [ebx + 0x1c]
mov dword [ebp - 0x220], edi
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
cmp dword [ebp - 0x220], 0
mov dword [ebp - 0x230], eax
mov esi, 0x428b14
jle 0x40da15
push esi
call fcn.0040655f
test eax, eax
pop ecx
jne 0x40da0c
mov eax, dword [ebp - 0x230]
push 1
push dword [eax + edi*4]
call fcn.0041391d
pop ecx
push eax
mov eax, dword [ebp - 0x230]
push str._len_:
push dword [eax + edi*4]
push 0x428b08
push edi
push str._param
push ebx
push esi
call fcn.0040a727
pop ecx
pop ecx
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.004010c6
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.0040133c
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.004010c6
mov ecx, eax
call fcn.0040b202
inc edi
cmp edi, dword [ebp - 0x220]
jl 0x40d99c
mov eax, dword [ebp - 0x230]
mov eax, dword [eax]
xor edx, edx
cmp eax, edx
mov dword [ebp - 0x224], edx
mov dword [ebp - 0x228], eax
je 0x40dacc
xor eax, eax
mov word [ebp - 0x218], dx
mov ecx, 0x81
lea edi, [ebp - 0x216]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0x104
lea eax, [ebp - 0x218]
push eax
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov edi, dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
lea eax, [ebp - 0x218]
push eax
call edi
push dword [ebp - 0x228]
mov dword [ebp - 0x234], eax
call edi
push dword [ebp - 0x228]
mov edi, eax
lea eax, [ebp - 0x218]
push eax
call fcn.0041500a
test eax, eax
pop ecx
pop ecx
je 0x40dac2
push dword [ebp - 0x228]
push dword [ebp - 0x234]
call fcn.0041500a
test eax, eax
pop ecx
pop ecx
je 0x40dac2
test edi, edi
je 0x40dacc
push edi
push dword [ebp - 0x234]
call fcn.0041500a
test eax, eax
pop ecx
pop ecx
jne 0x40dacc
mov dword [ebp - 0x224], 1
mov eax, dword [ebp - 0x224]
cmp eax, dword [ebp - 0x220]
jge 0x40dcd0
inc eax
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x224]
mov edi, dword [eax + ecx*4]
mov ax, word [edi]
cmp ax, 0x2f
je 0x40dbb1
cmp ax, 0x2d
je 0x40dbb1
push esi
call fcn.0040655f
test eax, eax
pop ecx
jne 0x40db70
push 1
push edi
call fcn.0041391d
pop ecx
push eax
push str._Length_:
push edi
push str.__FixItem_:
push dword [ebp - 0x224]
push str._Fixed_Item
push ebx
push esi
call fcn.0040a727
pop ecx
pop ecx
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.004010c6
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.0040133c
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.004010c6
mov ecx, eax
call fcn.0040b202
push edi
lea ecx, [ebp - 0x22c]
call fcn.004030d8
cmp dword [ebp - 0x22c], 0
je 0x40dcb2
push dword [ebp - 0x22c]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
jbe 0x40dcb2
lea eax, [ebp - 0x22c]
push eax
lea ecx, [ebx + 0xc]
call fcn.00408c7a
jmp 0x40dcb2
add edi, 2
push edi
lea ecx, [ebp - 0x21c]
call fcn.004030d8
lea ecx, [ebp - 0x21c]
call fcn.00403138
mov edi, dword [0x434a60]
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x234]
push eax
mov ecx, 0x434a5c
call fcn.004049ab
cmp dword [eax], edi
jne 0x40dc3e
mov eax, dword [ebp - 0x228]
cmp eax, dword [ebp - 0x220]
jge 0x40dc3e
mov ecx, dword [ebp - 0x224]
mov eax, dword [ebp - 0x230]
mov eax, dword [eax + ecx*4 + 4]
mov cx, word [eax]
cmp cx, 0x2d
je 0x40dc3e
cmp cx, 0x2f
je 0x40dc3e
push eax
lea eax, [ebp - 0x21c]
push eax
mov ecx, ebx
call fcn.00408bf5
mov ecx, eax
call fcn.004030d8
inc dword [ebp - 0x224]
inc dword [ebp - 0x228]
jmp 0x40dc58
lea eax, [ebp - 0x21c]
push 0x428ad0
mov ecx, ebx
push eax
call fcn.00408bf5
mov ecx, eax
call fcn.0040395e
push esi
call fcn.0040655f
test eax, eax
pop ecx
jne 0x40dcb2
lea eax, [ebp - 0x21c]
mov ecx, ebx
push eax
call fcn.00408bf5
mov eax, dword [eax]
push 1
push eax
push str.__Value_:
push dword [ebp - 0x21c]
push str._Key_:
push ebx
push esi
call fcn.0040a727
pop ecx
pop ecx
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.0040133c
mov ecx, eax
call fcn.0040c98b
mov ecx, eax
call fcn.0040133c
mov ecx, eax
call fcn.0040b202
inc dword [ebp - 0x224]
mov eax, dword [ebp - 0x224]
inc dword [ebp - 0x228]
cmp eax, dword [ebp - 0x220]
jl 0x40dae5
mov byte [ebp - 4], 1
push dword [ebp - 0x22c]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call esi
mov byte [ebp - 4], 0
push dword [ebp - 0x21c]
call esi
xor edi, edi
inc edi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24c]
call fcn.0040cc5a
mov ecx, dword [ebp - 0xc]
mov eax, edi
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00413d8f
leave
ret