Function at 0x1002fd30
Capabilities:
Accept command line arguments

Disassembly:
push 0x40
mov eax, 0x10087bdf
call fcn.10085435
xor esi, esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 4], esi
call dword [sym.imp.USER32.dll_SetProcessDPIAware]
mov dword [ebp - 0x3c], 0x80004005
xor ebx, ebx
lea ecx, [ebp - 0x3c]
inc ebx
mov byte [ebp - 4], bl
call fcn.10014ef7
test eax, eax
jns 0x1002fd6a
push eax
call dword [sym.imp.PhotoBase.dll_void___stdcall_Base::Throw_long_int_]
call dword [sym.imp.PhotoBase.dll_public:_static_class_ATL::CAtlStringMgr____stdcall_Base::String::GetBaseStringManager_void_]
push eax
lea ecx, [ebp - 0x24]
call fcn.10015daa
mov byte [ebp - 4], 2
call dword [sym.imp.PhotoBase.dll_public:_static_class_ATL::CAtlStringMgr____stdcall_Base::String::GetBaseStringManager_void_]
push eax
lea ecx, [ebp - 0x30]
call fcn.10015daa
mov byte [ebp - 4], 3
call dword [sym.imp.PhotoBase.dll_public:_static_class_ATL::CAtlStringMgr____stdcall_Base::String::GetBaseStringManager_void_]
push eax
lea ecx, [ebp - 0x2c]
call fcn.10015daa
mov eax, dword [ebp + 0x10]
mov edi, esi
mov byte [ebp - 4], 4
mov dword [ebp - 0x20], esi
test eax, eax
je 0x1002ff4d
cmp word [eax], si
je 0x1002ff4d
lea ecx, [ebp - 0x28]
push ecx
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
mov dword [ebp - 0x40], esi
mov byte [ebp - 4], 5
test esi, esi
je 0x1002ff42
xor edx, edx
mov dword [ebp - 0x18], edx
cmp edx, dword [ebp - 0x28]
jge 0x1002ff42
cmp dword [ebp - 0x1c], 0
jl 0x1002ff42
mov ecx, dword [esi + edx*4]
push 0x2f
pop edx
mov dword [ebp - 0x34], ecx
movzx eax, word [ecx]
cmp dx, ax
je 0x1002fe33
push 0x2d
pop edx
cmp dx, ax
je 0x1002fe33
mov eax, dword [ebp - 0x24]
cmp dword [eax - 0xc], 0
jne case.0x1002fe65.72
call fcn.10012c6e
push eax
push dword [ebp - 0x34]
lea ecx, [ebp - 0x24]
call fcn.10015d31
mov edx, dword [ebp - 0x18]
inc edx
jmp 0x1002fdda
push 0x80070057
jmp 0x1002fd64
lea eax, [ebp - 0x38]
push eax
push 3
pop edx
call fcn.1001eb84
mov dword [ebp - 0x1c], eax
test eax, eax
js case.0x1002fe65.72
cmp dword [ebp - 0x38], 2
jne case.0x1002fe65.72
mov edx, dword [ebp - 0x18]
mov ecx, dword [esi + edx*4]
movzx ecx, word [ecx + 2]
add ecx, 0xffffffbf
cmp ecx, 0x36
ja case.0x1002fe65.72
movzx eax, byte [ecx + 0x10030164]
jmp dword [eax*4 + 0x10030128]
inc edx
mov dword [ebp - 0x18], edx
cmp edx, dword [ebp - 0x28]
jge case.0x1002fe65.72
push 0xa
push 0
push dword [esi + edx*4]
call dword [sym.imp.msvcrt.dll_wcstoul]
add esp, 0xc
mov dword [ebp - 0x34], eax
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x1002fe23
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x20], eax
jmp 0x1002fe23
inc edx
mov dword [ebp - 0x18], edx
cmp edx, dword [ebp - 0x28]
jge case.0x1002fe65.72
mov ecx, dword [esi + edx*4]
call fcn.10012c6e
push eax
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x2c]
push dword [esi + eax*4]
jmp 0x1002fe1e
inc edx
mov dword [ebp - 0x18], edx
cmp edx, dword [ebp - 0x28]
jge case.0x1002fe65.72
mov ecx, dword [esi + edx*4]
call fcn.10012c6e
push eax
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x30]
push dword [esi + eax*4]
jmp 0x1002fe1e
or edi, 2
jmp 0x1002fe26
or edi, 4
jmp 0x1002fe26
or edi, ebx
jmp 0x1002fe26
or edi, 8
jmp 0x1002fe26
or edi, 0x10
jmp 0x1002fe26
or edi, 0x20
jmp 0x1002fe26
or edi, 0x40
jmp 0x1002fe26
or edi, 0x80
jmp 0x1002fe26
or edi, 0x100
jmp 0x1002fe26
or edi, 0x200
jmp 0x1002fe26
or edi, 0x400
jmp 0x1002fe26
push esi
mov byte [ebp - 4], 4
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov esi, dword [ebp - 0x24]
cmp dword [esi - 0xc], 0
jne 0x1002fff2
and dword [ebp - 0x1c], 0
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 6
push eax
push 0x1000b890
push ebx
xor ebx, ebx
push ebx
push 0x1000d8f0
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x1002fd63
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x18]
push ecx
mov esi, dword [eax]
push 0x65
push ebx
push eax
mov ecx, dword [esi + 0x14]
call dword [0x100a0bc0]
call dword [esi + 0x14]
test eax, eax
js 0x1002fd63
mov ecx, dword [ebp - 0x18]
call fcn.10012c6e
push eax
push dword [ebp - 0x18]
lea ecx, [ebp - 0x24]
call fcn.10015d31
push dword [ebp - 0x18]
mov ebx, dword [ebp - 0x38]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x1002ffe9
mov ecx, dword [eax]
push eax
mov esi, dword [ecx + 8]
mov ecx, esi
call dword [0x100a0bc0]
call esi
mov esi, dword [ebp - 0x24]
cmp dword [esi - 0xc], 0
je 0x1003005e
test byte [0x1009ef40], 1
je 0x10030005
mov edx, 0x1000b8c8
call fcn.1002f8c6
sub ebx, 1
je 0x10030090
sub ebx, 1
je 0x100300a4
sub ebx, 3
je 0x10030090
sub ebx, 1
je 0x1003002b
push 0x8000ffff
jmp 0x1002fd64
push esi
push 0x10010290
push 0x100102b0
push 0x10010318
call fcn.10063cff
add esp, 0x10
test eax, eax
js 0x1002fd63
test byte [0x1009ef40], 1
je 0x1003005e
mov edx, 0x1000b8b8
call fcn.1002f8c6
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.10015dfc
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.10015dfc
lea ecx, [esi - 0x10]
call fcn.10015dfc
cmp dword [ebp - 0x3c], 0
jl 0x10030088
call dword [sym.imp.ole32.dll_CoUninitialize]
call fcn.10085387
ret 0x10
mov edx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x20]
push 0
push dword [ebp - 0x30]
push edi
push esi
call fcn.100154de
jmp 0x10030043
mov ecx, esi
call fcn.10061b3f
jmp 0x10030043