Function at 0x40ddc1
Capabilities:
Accept command line arguments

Disassembly:
push 0x250
mov eax, 0x42ba45
call fcn.00413f1e
xor edi, edi
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.0040ca8c
mov esi, eax
add esp, 0xc
mov eax, 0x4319d0
cmp esi, edi
jne 0x40de01
mov esi, eax
push edi
push edi
push edi
push ebx
push eax
push 0x43199c
push esi
lea ecx, [ebp - 0x25c]
call fcn.0040ba90
mov dword [ebp - 4], edi
cmp esi, edi
jne 0x40de20
push ebp
pop ebp
cmp dword [ebx + 0x38], edi
jne 0x40de3c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x25c]
call fcn.0040d21b
mov eax, edi
call fcn.00413fa1
ret
mov dword [ebp - 0x21c], edi
mov byte [ebp - 4], 1
mov dword [ebp - 0x234], edi
mov byte [ebp - 4], 2
lea eax, [ebp - 0x220]
push eax
push dword [ebx + 0x38]
mov dword [ebp - 0x220], edi
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
cmp dword [ebp - 0x220], 0
mov dword [ebp - 0x230], eax
mov esi, 0x43196c
jle 0x40def3
push esi
call fcn.004069f6
pop ecx
test eax, eax
jne 0x40deea
mov eax, dword [ebp - 0x230]
push 1
push dword [eax + edi*4]
call fcn.00414010
pop ecx
push eax
mov eax, dword [ebp - 0x230]
push str._len_:
push dword [eax + edi*4]
push 0x431960
push edi
push str._param
push ebx
push esi
call fcn.0040afdf
pop ecx
pop ecx
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.00401251
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.004014c7
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.00401251
mov ecx, eax
call fcn.0040ba5f
inc edi
cmp edi, dword [ebp - 0x220]
jl 0x40de7a
mov eax, dword [ebp - 0x230]
mov eax, dword [eax]
and dword [ebp - 0x224], 0
mov dword [ebp - 0x228], eax
test eax, eax
je 0x40dfb0
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push eax
call fcn.00415ab0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x218]
push eax
push 0
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 - 0x238], eax
call edi
push dword [ebp - 0x228]
mov edi, eax
lea eax, [ebp - 0x218]
push eax
call fcn.00417101
pop ecx
pop ecx
test eax, eax
je 0x40dfa6
push dword [ebp - 0x228]
push dword [ebp - 0x238]
call fcn.00417101
pop ecx
pop ecx
test eax, eax
je 0x40dfa6
test edi, edi
je 0x40dfb0
push edi
push dword [ebp - 0x238]
call fcn.00417101
pop ecx
pop ecx
test eax, eax
jne 0x40dfb0
mov dword [ebp - 0x224], 1
mov eax, dword [ebp - 0x224]
cmp eax, dword [ebp - 0x220]
jge 0x40e1cb
inc eax
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x224]
mov edi, dword [eax + ecx*4]
movzx eax, word [edi]
push 0x2f
pop ecx
cmp cx, ax
je 0x40e08c
push 0x2d
pop ecx
cmp cx, ax
je 0x40e08c
push esi
call fcn.004069f6
pop ecx
test eax, eax
jne 0x40e058
push 1
push edi
call fcn.00414010
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.0040afdf
pop ecx
pop ecx
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.00401251
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.004014c7
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.00401251
mov ecx, eax
call fcn.0040ba5f
push edi
lea ecx, [ebp - 0x234]
call fcn.00403cfa
push dword [ebp - 0x234]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
jbe 0x40e1ad
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebx + 0x20]
call fcn.00409969
jmp 0x40e1ad
add edi, 2
push edi
lea ecx, [ebp - 0x21c]
call fcn.00403cfa
lea ecx, [ebp - 0x21c]
call fcn.0040318a
mov edi, 0x43e8cc
push edi
push dword [0x43e8e4]
lea ecx, [ebp - 0x23c]
call fcn.00404802
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x244]
push eax
mov ecx, edi
call fcn.00405ac4
lea ecx, [ebp - 0x23c]
push ecx
mov ecx, eax
call fcn.004033e3
test al, al
je 0x40e139
mov eax, dword [ebp - 0x228]
cmp eax, dword [ebp - 0x220]
jge 0x40e139
mov ecx, dword [ebp - 0x224]
mov eax, dword [ebp - 0x230]
mov eax, dword [eax + ecx*4 + 4]
movzx ecx, word [eax]
push 0x2d
pop edx
cmp dx, cx
je 0x40e139
push 0x2f
pop edx
cmp dx, cx
je 0x40e139
push eax
lea eax, [ebp - 0x21c]
push eax
mov ecx, ebx
call fcn.004091de
mov ecx, eax
call fcn.00403cfa
inc dword [ebp - 0x224]
inc dword [ebp - 0x228]
jmp 0x40e153
push 0x431928
lea eax, [ebp - 0x21c]
push eax
mov ecx, ebx
call fcn.004091de
mov ecx, eax
call fcn.00403d51
push esi
call fcn.004069f6
pop ecx
test eax, eax
jne 0x40e1ad
lea eax, [ebp - 0x21c]
push eax
mov ecx, ebx
call fcn.004091de
mov eax, dword [eax]
push 1
push eax
push str.__Value_:
push dword [ebp - 0x21c]
push str._Key_:
push ebx
push esi
call fcn.0040afdf
pop ecx
pop ecx
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.004014c7
mov ecx, eax
call fcn.0040cf77
mov ecx, eax
call fcn.004014c7
mov ecx, eax
call fcn.0040ba5f
inc dword [ebp - 0x224]
mov eax, dword [ebp - 0x224]
inc dword [ebp - 0x228]
cmp eax, dword [ebp - 0x220]
jl 0x40dfc9
mov byte [ebp - 4], 1
push dword [ebp - 0x234]
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
jmp 0x40de25