Function at 0x12e03920
Capabilities:
Accept command line arguments
Check if file exists
Get file attributes

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x1305ba61
push eax
mov eax, 0x1318
mov dword fs:[0], esp
call fcn.12f5d910
push ebx
push ebp
push esi
push edi
mov ebp, ecx
call fcn.12e05a10
test eax, eax
jne 0x12e03e0c
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov esi, eax
xor ebx, ebx
cmp esi, ebx
je 0x12e03e0c
mov ecx, 0xf9
xor eax, eax
lea edi, [esp + 0x53a]
mov word [esp + 0x538], bx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0x1f3
lea eax, [esp + 0x53c]
push esi
push eax
call fcn.12f5c57b
mov eax, dword [0x13199068]
add esp, 0xc
cmp eax, ebx
je 0x12e039b9
lea ecx, [esp + 0x538]
push ecx
push str.cmdline___s_
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
call fcn.12d92000
test eax, eax
je 0x12e039fc
lea edx, [esp + 0x538]
push 0x1f4
push edx
mov ecx, ebp
call fcn.12e035a0
mov ecx, 0xfa
xor eax, eax
lea edi, [esp + 0x538]
push 0x1f3
rep stosd dword es:[edi], eax
lea eax, [esp + 0x53c]
push esi
push eax
call fcn.12f5c57b
add esp, 0xc
mov ecx, 0x31
xor eax, eax
lea edi, [esp + 0x26c]
mov dword [esp + 0x268], ebx
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x268]
push 0x32
lea edx, [esp + 0x53c]
push ecx
push edx
call fcn.12d97e80
mov esi, eax
mov eax, dword [0x13199068]
add esp, 0xc
cmp eax, ebx
je 0x12e03a4d
push esi
push str.CDocLog::GetOpenFile_01__d
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
cmp esi, ebx
jle 0x12e03e0c
lea eax, [esp + 0x268]
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x10]
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x332]
mov word [esp + 0x330], bx
push 0x104
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [edx]
lea ecx, [esp + 0x334]
push ecx
push eax
call fcn.12f78840
add esp, 0xc
test eax, eax
je 0x12e03df2
mov esi, dword [0x13196dcc]
lea ecx, [esp + 0x330]
push ecx
call fcn.12e310a0
push eax
push esi
call fcn.12e12b80
add esp, 0xc
test eax, eax
jne 0x12e03df2
cmp dword [0x13199068], ebx
je 0x12e03ae3
push str.CDocLog::GetOpenFile_02
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
lea edx, [esp + 0x330]
push edx
call fcn.12e31030
mov esi, eax
add esp, 4
cmp esi, ebx
je 0x12e03b2c
push esi
call fcn.12e12c60
add esp, 4
test eax, eax
jne 0x12e03b2c
cmp dword [0x13199068], ebx
je 0x12e03df2
push esi
push str.CDocLog::GetOpenFile___s
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
jmp 0x12e03df2
cmp dword [0x13199068], ebx
je 0x12e03b48
push str.CDocLog::GetOpenFile_03
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x62]
mov word [esp + 0x60], bx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x60]
push 0x104
lea ecx, [esp + 0x334]
push eax
push ecx
call fcn.12e37140
add esp, 0xc
test eax, eax
je 0x12e03dd6
mov eax, dword [0x13199068]
mov esi, dword [0x13196dd0]
cmp eax, ebx
je 0x12e03ba7
lea edx, [esp + 0x60]
push edx
push esi
push str.AppName___s___szLong____s_
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x14
cmp esi, ebx
je 0x12e03df2
lea eax, [esp + 0x60]
push eax
push esi
call fcn.12f5e2a4
add esp, 8
test eax, eax
je 0x12e03df2
lea ecx, [esp + 0x60]
push ecx
call fcn.12e30b40
add esp, 4
test eax, eax
jne 0x12e03df2
lea edx, [esp + 0x60]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x12e03df2
not eax
shr eax, 4
and eax, 1
mov dword [esp + 0x18], eax
je 0x12e03df2
mov edi, dword [0x13196dcc]
lea eax, [esp + 0x18]
push ebx
push eax
lea ecx, [esp + 0x68]
push edi
push ecx
mov dword [esp + 0x28], ebx
xor esi, esi
call fcn.12e123f0
add esp, 0x10
test eax, eax
je 0x12e03c38
lea edx, [esp + 0x60]
mov ecx, ebp
push edx
push edi
call fcn.12e03f90
mov esi, eax
neg esi
sbb esi, esi
inc esi
cmp dword [0x13199068], ebx
je 0x12e03c55
push esi
push str.CDocLog::GetOpenFile_3___d_
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
cmp esi, ebx
jne 0x12e03c70
lea eax, [esp + 0x60]
push edi
push eax
call fcn.12e12cf0
add esp, 8
test eax, eax
je 0x12e03c70
mov esi, 1
push ebx
call fcn.12d91b00
add esp, 4
test eax, eax
je 0x12e03c94
lea ecx, [esp + 0x60]
push ecx
call fcn.12e12f90
add esp, 4
test eax, eax
je 0x12e03df2
jmp 0x12e03c9c
cmp esi, ebx
jne 0x12e03df2
lea edx, [esp + 0x60]
mov ecx, ebp
push edx
call fcn.12e03e30
test eax, eax
jne 0x12e03df2
push ebx
call fcn.12d91b00
add esp, 4
test eax, eax
jne 0x12e03df2
call fcn.12d92b80
test eax, eax
jne 0x12e03df2
cmp dword [0x13199068], ebx
je 0x12e03cea
push str.CDocLog::GetOpenFile_4
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
push ebx
push 0x300001
lea ecx, [esp + 0x30]
call fcn.12e0ac40
lea ecx, [esp + 0x920]
mov dword [esp + 0x1330], ebx
call fcn.12e02000
lea ecx, [esp + 0x60]
push ebx
lea eax, [esp + 0x2c]
push ecx
mov byte [esp + 0x1338], 1
lea ecx, [esp + 0x928]
mov dword [esp + 0x954], eax
mov dword [esp + 0x934], ebx
call fcn.12e02200
lea edx, [esp + 0x920]
push edx
call fcn.12e726c0
add esp, 4
lea eax, [ebp + 0x14]
lea ecx, [esp + 0x1c]
push 1
push eax
call fcn.12f56170
lea ecx, [esp + 0x920]
mov byte [esp + 0x1330], 2
call fcn.12e02880
push eax
mov ecx, ebp
call fcn.12e04080
cmp dword [0x13199068], ebx
je 0x12e03d9c
lea ecx, [esp + 0x920]
call fcn.12e02880
push eax
push str.CDocLog::GetOpenFile_______s
push str.DocLog2
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0x10
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1330], 1
call fcn.12f561d0
lea ecx, [esp + 0x920]
mov byte [esp + 0x1330], bl
call fcn.12e021f0
lea ecx, [esp + 0x28]
mov dword [esp + 0x1330], 0xffffffff
call fcn.12e0aca0
jmp 0x12e03df2
cmp dword [0x13199068], ebx
je 0x12e03df2
push str.CDocLog::GetOpenFile_04
push str.cmdline
push 0xffffffffffffffff
call fcn.12dad750
add esp, 0xc
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
add ecx, 4
dec eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
jne 0x12e03a64
mov ecx, dword [esp + 0x1328]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1324
ret