Function at 0x474970
Capabilities:
Check if file exists
Print debug messages
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53a90c
mov eax, dword fs:[0]
push eax
mov eax, 0x22f4
call fcn.004fa800
mov eax, dword [0x5954a0]
xor eax, ebp
mov dword [ebp - 0x20], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x22a8], ecx
push 0x567128
lea ecx, [ebp - 0x444]
call fcn.0044f380
mov dword [ebp - 4], 0
mov dword [ebp - 0xe58], 3
mov eax, dword [ebp - 0x444]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x1ed4], ecx
xor edx, edx
cmp dword [ebp - 0x1ed4], 0
sete dl
movzx eax, dl
test eax, eax
je 0x474a74
push ecx
mov ecx, esp
mov dword [ebp - 0x1e98], esp
mov dword [ebp - 0x1ed8], ecx
mov edx, dword [ebp - 0x22a8]
add edx, 4
push edx
mov ecx, dword [ebp - 0x1ed8]
call fcn.00451520
mov eax, dword [ebp - 0x1ed8]
mov dword [ebp - 0x22ac], eax
lea ecx, [ebp - 0x1e9c]
push ecx
mov ecx, dword [ebp - 0x22a8]
call fcn.00473420
mov dword [ebp - 0x22b0], eax
mov edx, dword [ebp - 0x22b0]
mov dword [ebp - 0x1edc], edx
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x1edc]
push eax
lea ecx, [ebp - 0x444]
call fcn.0044f9d0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x1e9c]
sub ecx, 0x10
mov dword [ebp - 0x1ee0], ecx
mov ecx, dword [ebp - 0x1ee0]
call fcn.00451230
mov edx, dword [ebp - 0x444]
mov dword [ebp - 0x434], edx
cmp dword [ebp - 0x434], 0
jne 0x474a98
mov dword [ebp - 0x22b4], 0
jmp 0x474b62
mov eax, dword [ebp - 0x434]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x474ac3
mov dword [ebp - 0x22b8], 0
jmp 0x474b56
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x1ee8], esp
mov ecx, dword [ebp - 0x1eec]
mov dword [ebp - 0x22b8], ecx
cmp dword [ebp - 0x1ee8], 0
je 0x474af1
cmp dword [ebp - 0x434], 0
jne 0x474afd
mov dword [ebp - 0x22b8], 0
jmp 0x474b56
mov edx, dword [ebp - 0x1ee8]
mov byte [edx], 0
push 0
push 0
mov eax, dword [ebp - 0x14]
shl eax, 1
push eax
mov ecx, dword [ebp - 0x1ee8]
push ecx
push 0xffffffffffffffff
mov edx, dword [ebp - 0x434]
push edx
push 0
mov eax, dword [ebp - 0xe58]
push eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x1ee4], eax
cmp dword [ebp - 0x1ee4], 0
jne 0x474b4a
mov dword [ebp - 0x22b8], 0
jmp 0x474b56
mov ecx, dword [ebp - 0x1ee8]
mov dword [ebp - 0x22b8], ecx
mov edx, dword [ebp - 0x22b8]
mov dword [ebp - 0x22b4], edx
mov eax, dword [ebp - 0x22b4]
push eax
push str.GetAppFileFormExplorer___s
call fcn.0047c040
add esp, 8
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x1ef0], edx
xor eax, eax
cmp dword [ebp - 0x1ef0], 0
sete al
movzx ecx, al
test ecx, ecx
je 0x474c06
mov edx, dword [ebp - 0x22a8]
mov eax, dword [edx + 4]
mov dword [ebp - 0x1ef4], eax
mov ecx, dword [ebp - 0x1ef4]
push ecx
lea edx, [ebp - 0x1ea0]
push edx
mov ecx, dword [ebp - 0x22a8]
call fcn.00473a20
mov dword [ebp - 0x22bc], eax
mov eax, dword [ebp - 0x22bc]
mov dword [ebp - 0x1ef8], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1ef8]
push ecx
lea ecx, [ebp - 0x444]
call fcn.0044f9d0
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x1ea0]
sub edx, 0x10
mov dword [ebp - 0x1efc], edx
mov ecx, dword [ebp - 0x1efc]
call fcn.00451230
mov eax, dword [ebp - 0x444]
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
jne 0x474c2a
mov dword [ebp - 0x22c0], 0
jmp 0x474cf4
mov ecx, dword [ebp - 0x434]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x474c55
mov dword [ebp - 0x22c4], 0
jmp 0x474ce8
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x1f04], esp
mov edx, dword [ebp - 0x1f08]
mov dword [ebp - 0x22c4], edx
cmp dword [ebp - 0x1f04], 0
je 0x474c83
cmp dword [ebp - 0x434], 0
jne 0x474c8f
mov dword [ebp - 0x22c4], 0
jmp 0x474ce8
mov eax, dword [ebp - 0x1f04]
mov byte [eax], 0
push 0
push 0
mov ecx, dword [ebp - 0x14]
shl ecx, 1
push ecx
mov edx, dword [ebp - 0x1f04]
push edx
push 0xffffffffffffffff
mov eax, dword [ebp - 0x434]
push eax
push 0
mov ecx, dword [ebp - 0xe58]
push ecx
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x1f00], eax
cmp dword [ebp - 0x1f00], 0
jne 0x474cdc
mov dword [ebp - 0x22c4], 0
jmp 0x474ce8
mov edx, dword [ebp - 0x1f04]
mov dword [ebp - 0x22c4], edx
mov eax, dword [ebp - 0x22c4]
mov dword [ebp - 0x22c0], eax
mov ecx, dword [ebp - 0x22c0]
push ecx
push str.GetAppFileFormFileExts___s
call fcn.0047c040
add esp, 8
xor edx, edx
mov word [ebp - 0xe4c], dx
push 0x7fe
push 0
lea eax, [ebp - 0xe4a]
push eax
call fcn.004f8090
add esp, 0xc
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x1f0c], edx
xor eax, eax
cmp dword [ebp - 0x1f0c], 0
sete al
movzx ecx, al
cmp ecx, 1
jne 0x474db8
mov edx, dword [ebp - 0x22a8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x1f10], eax
lea ecx, [ebp - 0xe4c]
push ecx
push 0
mov edx, dword [ebp - 0x1f10]
push edx
call dword [sym.imp.SHELL32.dll_FindExecutableW]
cmp eax, 0x20
jbe 0x474db8
lea eax, [ebp - 0xe4c]
test eax, eax
jne 0x474d8a
mov dword [ebp - 0x1f14], 0
jmp 0x474d9f
lea ecx, [ebp - 0xe4c]
push ecx
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x1f14], eax
mov edx, dword [ebp - 0x1f14]
push edx
lea eax, [ebp - 0xe4c]
push eax
lea ecx, [ebp - 0x444]
call fcn.0044fb50
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x1f18], edx
xor eax, eax
cmp dword [ebp - 0x1f18], 0
sete al
movzx ecx, al
test ecx, ecx
je 0x474e10
mov dword [ebp - 0x1ea4], 0
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x444]
sub edx, 0x10
mov dword [ebp - 0x1f1c], edx
mov ecx, dword [ebp - 0x1f1c]
call fcn.00451230
mov eax, dword [ebp - 0x1ea4]
jmp 0x47653d
mov eax, dword [ebp - 0x22a8]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x1f20], ecx
push str..dwg
mov edx, dword [ebp - 0x1f20]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x474efa
push 0
push str.AcLauncher.exe
lea ecx, [ebp - 0x444]
call fcn.0046f880
test eax, eax
je 0x474efa
call fcn.004c02e6
push eax
lea ecx, [ebp - 0x147c]
call fcn.004514d0
mov byte [ebp - 4], 3
lea eax, [ebp - 0x147c]
push eax
lea ecx, [ebp - 0x1ea8]
push ecx
mov ecx, dword [ebp - 0x22a8]
call fcn.004745f0
mov edx, dword [ebp - 0x1ea8]
sub edx, 0x10
mov dword [ebp - 0x1f30], edx
mov ecx, dword [ebp - 0x1f30]
call fcn.00451230
mov eax, dword [ebp - 0x147c]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov ecx, dword [ebp - 0x147c]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x1f34], edx
xor eax, eax
cmp dword [ebp - 0x1f34], 0
sete al
movzx ecx, al
test ecx, ecx
jne 0x474edc
lea edx, [ebp - 0x147c]
push edx
lea ecx, [ebp - 0x444]
call fcn.0044f9d0
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x147c]
sub eax, 0x10
mov dword [ebp - 0x1f38], eax
mov ecx, dword [ebp - 0x1f38]
call fcn.00451230
mov ecx, dword [ebp - 0x444]
mov dword [ebp - 0x434], ecx
cmp dword [ebp - 0x434], 0
jne 0x474f1e
mov dword [ebp - 0x22c8], 0
jmp 0x474fe8
mov edx, dword [ebp - 0x434]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x474f49
mov dword [ebp - 0x22cc], 0
jmp 0x474fdc
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x1f40], esp
mov eax, dword [ebp - 0x1f44]
mov dword [ebp - 0x22cc], eax
cmp dword [ebp - 0x1f40], 0
je 0x474f77
cmp dword [ebp - 0x434], 0
jne 0x474f83
mov dword [ebp - 0x22cc], 0
jmp 0x474fdc
mov ecx, dword [ebp - 0x1f40]
mov byte [ecx], 0
push 0
push 0
mov edx, dword [ebp - 0x14]
shl edx, 1
push edx
mov eax, dword [ebp - 0x1f40]
push eax
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x434]
push ecx
push 0
mov edx, dword [ebp - 0xe58]
push edx
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x1f3c], eax
cmp dword [ebp - 0x1f3c], 0
jne 0x474fd0
mov dword [ebp - 0x22cc], 0
jmp 0x474fdc
mov eax, dword [ebp - 0x1f40]
mov dword [ebp - 0x22cc], eax
mov ecx, dword [ebp - 0x22cc]
mov dword [ebp - 0x22c8], ecx
mov edx, dword [ebp - 0x22a8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
jne 0x47500f
mov dword [ebp - 0x22d0], 0
jmp 0x4750d9
mov ecx, dword [ebp - 0x434]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x47503a
mov dword [ebp - 0x22d4], 0
jmp 0x4750cd
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x1f4c], esp
mov edx, dword [ebp - 0x1f50]
mov dword [ebp - 0x22d4], edx
cmp dword [ebp - 0x1f4c], 0
je 0x475068
cmp dword [ebp - 0x434], 0
jne 0x475074
mov dword [ebp - 0x22d4], 0
jmp 0x4750cd
mov eax, dword [ebp - 0x1f4c]
mov byte [eax], 0
push 0
push 0
mov ecx, dword [ebp - 0x14]
shl ecx, 1
push ecx
mov edx, dword [ebp - 0x1f4c]
push edx
push 0xffffffffffffffff
mov eax, dword [ebp - 0x434]
push eax
push 0
mov ecx, dword [ebp - 0xe58]
push ecx
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x1f48], eax
cmp dword [ebp - 0x1f48], 0
jne 0x4750c1
mov dword [ebp - 0x22d4], 0
jmp 0x4750cd
mov edx, dword [ebp - 0x1f4c]
mov dword [ebp - 0x22d4], edx
mov eax, dword [ebp - 0x22d4]
mov dword [ebp - 0x22d0], eax
mov ecx, dword [ebp - 0x22c8]
push ecx
mov edx, dword [ebp - 0x22d0]
push edx
push 0x54a8b4
call fcn.0047c040
add esp, 0xc
mov eax, dword [ebp - 0x444]
sub eax, 0x10
mov dword [ebp - 0x1f54], eax
mov ecx, dword [ebp - 0x1f54]
push ecx
call fcn.0044fd30
add esp, 4
mov dword [ebp - 0x1f58], eax
mov edx, dword [ebp - 0x1f58]
add edx, 0x10
mov dword [ebp - 0x43c], edx
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x444]
call fcn.004703c0
push 0x546398
lea ecx, [ebp - 0x444]
call fcn.0046fb10
mov eax, dword [ebp - 0x444]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x1478], ecx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x440], 0
xor edx, edx
mov word [ebp - 0x1474], dx
push 0x3fe
push 0
lea eax, [ebp - 0x1472]
push eax
call fcn.004f8090
add esp, 0xc
mov ecx, dword [ebp - 0x1c]
push ecx
push 0x54a8b0
lea ecx, [ebp - 0x444]
call fcn.0046f880
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jge 0x4751a7
jmp 0x4752e3
mov edx, dword [ebp - 0x1c]
add edx, 1
push edx
push 0x54a8b0
lea ecx, [ebp - 0x444]
call fcn.0046f880
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
push 0x400
push 0
lea ecx, [ebp - 0x1474]
push ecx
call fcn.004f8090
add esp, 0xc
mov edx, dword [ebp - 0x440]
sub edx, dword [ebp - 0x1c]
push edx
mov eax, dword [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x1eac]
push ecx
lea ecx, [ebp - 0x444]
call fcn.00451010
mov dword [ebp - 0x1fb4], eax
mov edx, dword [ebp - 0x1fb4]
mov eax, dword [edx]
mov dword [ebp - 0x1fb8], eax
push 0x200
lea ecx, [ebp - 0x1474]
push ecx
mov edx, dword [ebp - 0x1fb8]
push edx
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov eax, dword [ebp - 0x1eac]
sub eax, 0x10
mov dword [ebp - 0x1fbc], eax
mov ecx, dword [ebp - 0x1fbc]
call fcn.00451230
mov ecx, dword [ebp - 0x440]
sub ecx, dword [ebp - 0x1c]
add ecx, 2
push ecx
mov edx, dword [ebp - 0x1c]
sub edx, 1
push edx
lea eax, [ebp - 0x1eb0]
push eax
lea ecx, [ebp - 0x444]
call fcn.00451010
mov dword [ebp - 0x22d8], eax
mov ecx, dword [ebp - 0x22d8]
mov dword [ebp - 0x1fc0], ecx
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x1fc0]
mov eax, dword [edx]
mov dword [ebp - 0x1fc4], eax
lea ecx, [ebp - 0x1474]
push ecx
mov edx, dword [ebp - 0x1fc4]
push edx
lea ecx, [ebp - 0x43c]
call fcn.00459400
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x1eb0]
sub eax, 0x10
mov dword [ebp - 0x2004], eax
mov ecx, dword [ebp - 0x2004]
call fcn.00451230
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x1478]
jl 0x475185
push 0x567128
lea ecx, [ebp - 0xe54]
call fcn.0044f380
mov byte [ebp - 4], 6
push 0x567128
lea ecx, [ebp - 0x18]
call fcn.0044f380
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x43c]
mov dword [ebp - 0x2018], eax
push 0x54574c
mov ecx, dword [ebp - 0x2018]
push ecx
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
mov dword [ebp - 0x438], eax
call fcn.004c02e6
push eax
lea ecx, [ebp - 0x1068]
call fcn.004514d0
mov byte [ebp - 4], 8
cmp dword [ebp - 0x438], 0
jne 0x475856
xor edx, edx
mov word [ebp - 0x1684], dx
push 0x200
push 0
lea eax, [ebp - 0x1682]
push eax
call fcn.004f8090
add esp, 0xc
mov ecx, dword [ebp - 0x22a8]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x201c], edx
push 0x100
lea eax, [ebp - 0x1684]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x201c]
push ecx
call fcn.004fad12
add esp, 0x24
push str..BMP
lea edx, [ebp - 0x1684]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..DIB
lea eax, [ebp - 0x1684]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..GIF
lea ecx, [ebp - 0x1684]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..PNG
lea edx, [ebp - 0x1684]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..JPE
lea eax, [ebp - 0x1684]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..JPG
lea ecx, [ebp - 0x1684]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..JPEG
lea edx, [ebp - 0x1684]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..JFIF
lea eax, [ebp - 0x1684]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..TIF
lea ecx, [ebp - 0x1684]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x475493
push str..TIFF
lea edx, [ebp - 0x1684]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x47569c
xor eax, eax
mov word [ebp - 0x1a8c], ax
push 0x400
push 0
lea ecx, [ebp - 0x1a8a]
push ecx
call fcn.004f8090
add esp, 0xc
mov edx, dword [ebp - 0x22a8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x2020], eax
push 0x200
lea ecx, [ebp - 0x1a8c]
push ecx
mov edx, dword [ebp - 0x2020]
push edx
call dword [sym.imp.KERNEL32.dll_GetLongPathNameW]
mov eax, str.MSPAINT.EXE
test eax, eax
jne 0x4754ef
mov dword [ebp - 0x2024], 0
jmp 0x475502
push str.MSPAINT.EXE
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2024], eax
mov ecx, dword [ebp - 0x2024]
push ecx
push str.MSPAINT.EXE
lea ecx, [ebp - 0xe54]
call fcn.0044fb50
mov edx, 0x546398
test edx, edx
jne 0x47552e
mov dword [ebp - 0x2028], 0
jmp 0x475541
push 0x546398
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2028], eax
mov eax, dword [ebp - 0x2028]
push eax
push 0x546398
lea ecx, [ebp - 0x18]
call fcn.0044ecb0
lea ecx, [ebp - 0x1a8c]
test ecx, ecx
jne 0x47556b
mov dword [ebp - 0x202c], 0
jmp 0x475580
lea edx, [ebp - 0x1a8c]
push edx
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x202c], eax
mov eax, dword [ebp - 0x202c]
push eax
lea ecx, [ebp - 0x1a8c]
push ecx
lea ecx, [ebp - 0x18]
call fcn.0044ecb0
mov edx, 0x546398
test edx, edx
jne 0x4755ab
mov dword [ebp - 0x2030], 0
jmp 0x4755be
push 0x546398
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2030], eax
mov eax, dword [ebp - 0x2030]
push eax
push 0x546398
lea ecx, [ebp - 0x18]
call fcn.0044ecb0
mov ecx, dword [ebp - 0xe54]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov dword [ebp - 0x1eb4], 1
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x1068]
sub edx, 0x10
mov dword [ebp - 0x2034], edx
mov ecx, dword [ebp - 0x2034]
call fcn.00451230
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x18]
sub eax, 0x10
mov dword [ebp - 0x2038], eax
mov ecx, dword [ebp - 0x2038]
call fcn.00451230
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0xe54]
sub ecx, 0x10
mov dword [ebp - 0x203c], ecx
mov ecx, dword [ebp - 0x203c]
call fcn.00451230
mov byte [ebp - 4], 0
mov edx, dword [ebp - 0x43c]
sub edx, 0x10
mov dword [ebp - 0x2040], edx
mov ecx, dword [ebp - 0x2040]
call fcn.00451230
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x444]
sub eax, 0x10
mov dword [ebp - 0x2044], eax
mov ecx, dword [ebp - 0x2044]
call fcn.00451230
mov eax, dword [ebp - 0x1eb4]
jmp 0x47653d
mov ecx, str.pCur__NULL__return_false
test ecx, ecx
jne 0x4756b1
mov dword [ebp - 0x2048], 0
jmp 0x4756c4
push str.pCur__NULL__return_false
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2048], eax
mov edx, dword [ebp - 0x2048]
push edx
push str.pCur__NULL__return_false
lea ecx, [ebp - 0x1068]
call fcn.0044fb50
mov eax, dword [ebp - 0x1068]
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
jne 0x4756ff
mov dword [ebp - 0x22dc], 0
jmp 0x4757c9
mov ecx, dword [ebp - 0x434]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x47572a
mov dword [ebp - 0x22e0], 0
jmp 0x4757bd
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x2050], esp
mov edx, dword [ebp - 0x2054]
mov dword [ebp - 0x22e0], edx
cmp dword [ebp - 0x2050], 0
je 0x475758
cmp dword [ebp - 0x434], 0
jne 0x475764
mov dword [ebp - 0x22e0], 0
jmp 0x4757bd
mov eax, dword [ebp - 0x2050]
mov byte [eax], 0
push 0
push 0
mov ecx, dword [ebp - 0x14]
shl ecx, 1
push ecx
mov edx, dword [ebp - 0x2050]
push edx
push 0xffffffffffffffff
mov eax, dword [ebp - 0x434]
push eax
push 0
mov ecx, dword [ebp - 0xe58]
push ecx
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x204c], eax
cmp dword [ebp - 0x204c], 0
jne 0x4757b1
mov dword [ebp - 0x22e0], 0
jmp 0x4757bd
mov edx, dword [ebp - 0x2050]
mov dword [ebp - 0x22e0], edx
mov eax, dword [ebp - 0x22e0]
mov dword [ebp - 0x22dc], eax
mov ecx, dword [ebp - 0x22dc]
push ecx
call fcn.0047c040
add esp, 4
mov dword [ebp - 0x1eb8], 0
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x1068]
sub edx, 0x10
mov dword [ebp - 0x2058], edx
mov ecx, dword [ebp - 0x2058]
call fcn.00451230
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x18]
sub eax, 0x10
mov dword [ebp - 0x205c], eax
mov ecx, dword [ebp - 0x205c]
call fcn.00451230
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xe54]
call fcn.0044f990
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x43c]
call fcn.0044f990
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x444]
call fcn.0044f990
mov eax, dword [ebp - 0x1eb8]
jmp 0x47653d
mov ecx, dword [ebp - 0x438]
sub ecx, dword [ebp - 0x43c]
sar ecx, 1
mov dword [ebp - 0x106c], ecx
mov edx, dword [ebp - 0x106c]
add edx, 4
push edx
lea eax, [ebp - 0x1ebc]
push eax
lea ecx, [ebp - 0x43c]
call fcn.0044e740
mov dword [ebp - 0x22e4], eax
mov ecx, dword [ebp - 0x22e4]
mov dword [ebp - 0x206c], ecx
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x206c]
push edx
lea ecx, [ebp - 0xe54]
call fcn.0044f9d0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1ebc]
call fcn.0044f990
mov eax, dword [ebp - 0x43c]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x2074], ecx
mov edx, dword [ebp - 0x2074]
sub edx, 4
cmp dword [ebp - 0x106c], edx
jne 0x47591b
mov eax, 0x567128
test eax, eax
jne 0x4758f2
mov dword [ebp - 0x2078], 0
jmp 0x475905
push 0x567128
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2078], eax
mov ecx, dword [ebp - 0x2078]
push ecx
push 0x567128
lea ecx, [ebp - 0x18]
call fcn.0044fb50
jmp 0x475980
mov edx, dword [ebp - 0x43c]
mov eax, dword [edx - 0xc]
mov dword [ebp - 0x207c], eax
mov ecx, dword [ebp - 0x207c]
sub ecx, dword [ebp - 0x106c]
sub ecx, 4
push ecx
lea edx, [ebp - 0x1ec0]
push edx
lea ecx, [ebp - 0x43c]
call fcn.0044e690
mov dword [ebp - 0x22e8], eax
mov eax, dword [ebp - 0x22e8]
mov dword [ebp - 0x2080], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x2080]
push ecx
lea ecx, [ebp - 0x18]
call fcn.0044f9d0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1ec0]
call fcn.0044f990
lea ecx, [ebp - 0xe54]
call fcn.004703c0
push 0x546398
lea ecx, [ebp - 0xe54]
call fcn.0046fb10
push 0x546394
lea ecx, [ebp - 0xe54]
call fcn.0046fb10
lea ecx, [ebp - 0x18]
call fcn.004703c0
push 0x546398
lea ecx, [ebp - 0x18]
call fcn.0046fb10
push 0x546394
lea ecx, [ebp - 0x18]
call fcn.0046fb10
xor edx, edx
mov word [ebp - 0x1064], dx
push 0x200
push 0
lea eax, [ebp - 0x1062]
push eax
call fcn.004f8090
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x64c], cx
push 0x200
push 0
lea edx, [ebp - 0x64a]
push edx
call fcn.004f8090
add esp, 0xc
push 0x100
lea eax, [ebp - 0x64c]
push eax
push 0x100
lea ecx, [ebp - 0x1064]
push ecx
push 0
push 0
push 0
push 0
mov edx, dword [ebp - 0xe54]
push edx
call fcn.004fad12
add esp, 0x24
lea eax, [ebp - 0x64c]
push eax
lea ecx, [ebp - 0x1064]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatW]
mov dword [ebp - 0x430], 0
push str.WINWORD.EXE
lea edx, [ebp - 0x1064]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x475a8b
push 0
push str._t__n
lea ecx, [ebp - 0x18]
call fcn.0046f880
test eax, eax
jge 0x475a8b
mov dword [ebp - 0x430], 1
cmp dword [ebp - 0x430], 0
je 0x475aa3
push 0x54a7c8
push 0
lea ecx, [ebp - 0x18]
call fcn.00476560
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
jne 0x475ac4
mov dword [ebp - 0x22ec], 0
jmp 0x475b8e
mov ecx, dword [ebp - 0x434]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x475aef
mov dword [ebp - 0x22f0], 0
jmp 0x475b82
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x2168], esp
mov edx, dword [ebp - 0x216c]
mov dword [ebp - 0x22f0], edx
cmp dword [ebp - 0x2168], 0
je 0x475b1d
cmp dword [ebp - 0x434], 0
jne 0x475b29
mov dword [ebp - 0x22f0], 0
jmp 0x475b82
mov eax, dword [ebp - 0x2168]
mov byte [eax], 0
push 0
push 0
mov ecx, dword [ebp - 0x14]
shl ecx, 1
push ecx
mov edx, dword [ebp - 0x2168]
push edx
push 0xffffffffffffffff
mov eax, dword [ebp - 0x434]
push eax
push 0
mov ecx, dword [ebp - 0xe58]
push ecx
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x2164], eax
cmp dword [ebp - 0x2164], 0
jne 0x475b76
mov dword [ebp - 0x22f0], 0
jmp 0x475b82
mov edx, dword [ebp - 0x2168]
mov dword [ebp - 0x22f0], edx
mov eax, dword [ebp - 0x22f0]
mov dword [ebp - 0x22ec], eax
mov ecx, dword [ebp - 0x22ec]
push ecx
push 0x54a7b8
call fcn.0047c040
add esp, 8
push str.SLDWORKS.EXE
lea edx, [ebp - 0x1064]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x475bf4
mov eax, 0x567128
test eax, eax
jne 0x475bcd
mov dword [ebp - 0x2170], 0
jmp 0x475be0
push 0x567128
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2170], eax
mov ecx, dword [ebp - 0x2170]
push ecx
push 0x567128
lea ecx, [ebp - 0x18]
call fcn.0044fb50
push str.CORELDRW.EXE
lea edx, [ebp - 0x1064]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x475c46
mov eax, 0x567128
test eax, eax
jne 0x475c1f
mov dword [ebp - 0x2174], 0
jmp 0x475c32
push 0x567128
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2174], eax
mov ecx, dword [ebp - 0x2174]
push ecx
push 0x567128
lea ecx, [ebp - 0x18]
call fcn.0044fb50
push str.MSPAINT.EXE
lea edx, [ebp - 0x1064]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x475c9b
mov eax, str.MSPAINT.EXE
test eax, eax
jne 0x475c71
mov dword [ebp - 0x2178], 0
jmp 0x475c84
push str.MSPAINT.EXE
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2178], eax
mov ecx, dword [ebp - 0x2178]
push ecx
push str.MSPAINT.EXE
lea ecx, [ebp - 0xe54]
call fcn.0044fb50
push str.KMCAD.EXE
lea edx, [ebp - 0x1064]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x475ced
mov eax, str._dde
test eax, eax
jne 0x475cc6
mov dword [ebp - 0x217c], 0
jmp 0x475cd9
push str._dde
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x217c], eax
mov ecx, dword [ebp - 0x217c]
push ecx
push str._dde
lea ecx, [ebp - 0x18]
call fcn.0044fb50
push str.REVIT.EXE
lea edx, [ebp - 0x1064]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x475d3f
mov eax, 0x567128
test eax, eax
jne 0x475d18
mov dword [ebp - 0x2180], 0
jmp 0x475d2b
push 0x567128
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2180], eax
mov ecx, dword [ebp - 0x2180]
push ecx
push 0x567128
lea ecx, [ebp - 0x18]
call fcn.0044fb50
xor edx, edx
mov word [ebp - 0x42c], dx
push 0x400
push 0
lea eax, [ebp - 0x42a]
push eax
call fcn.004f8090
add esp, 0xc
mov ecx, dword [ebp - 0x22a8]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x2184], edx
push 0x200
lea eax, [ebp - 0x42c]
push eax
mov ecx, dword [ebp - 0x2184]
push ecx
call dword [sym.imp.KERNEL32.dll_GetLongPathNameW]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x475da7
push 0x200
mov edx, dword [ebp + 0xc]
push edx
lea eax, [ebp - 0x42c]
push eax
call fcn.004fbbbe
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0xe50], eax
push 0
push 0x54a744
lea ecx, [ebp - 0x18]
call fcn.0046f880
test eax, eax
jl 0x475f68
push 0x54a744
lea ecx, [ebp - 0x18]
call fcn.0044ea60
neg eax
sbb eax, eax
add eax, 1
movzx ecx, al
test ecx, ecx
je 0x475f02
lea edx, [ebp - 0x42c]
push edx
push 0x544c8c
lea eax, [ebp - 0x18]
push eax
call fcn.00451560
add esp, 0xc
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x434], ecx
cmp dword [ebp - 0x434], 0
jne 0x475e22
mov dword [ebp - 0x22f4], 0
jmp 0x475eec
mov edx, dword [ebp - 0x434]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x475e4d
mov dword [ebp - 0x22f8], 0
jmp 0x475ee0
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x2198], esp
mov eax, dword [ebp - 0x219c]
mov dword [ebp - 0x22f8], eax
cmp dword [ebp - 0x2198], 0
je 0x475e7b
cmp dword [ebp - 0x434], 0
jne 0x475e87
mov dword [ebp - 0x22f8], 0
jmp 0x475ee0
mov ecx, dword [ebp - 0x2198]
mov byte [ecx], 0
push 0
push 0
mov edx, dword [ebp - 0x14]
shl edx, 1
push edx
mov eax, dword [ebp - 0x2198]
push eax
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x434]
push ecx
push 0
mov edx, dword [ebp - 0xe58]
push edx
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x2194], eax
cmp dword [ebp - 0x2194], 0
jne 0x475ed4
mov dword [ebp - 0x22f8], 0
jmp 0x475ee0
mov eax, dword [ebp - 0x2198]
mov dword [ebp - 0x22f8], eax
mov ecx, dword [ebp - 0x22f8]
mov dword [ebp - 0x22f4], ecx
mov edx, dword [ebp - 0x22f4]
push edx
push str.szCmdLine___s
call fcn.0047c040
add esp, 8
jmp 0x475f63
push 0x567128
lea ecx, [ebp - 0x1a90]
call fcn.0044f380
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x42c]
push eax
push 0x544c8c
lea ecx, [ebp - 0x1a90]
push ecx
call fcn.00451560
add esp, 0xc
mov edx, dword [ebp - 0x1a90]
push edx
push 0x54a744
lea ecx, [ebp - 0x18]
call fcn.00459400
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x1a90]
sub eax, 0x10
mov dword [ebp - 0x21e4], eax
mov ecx, dword [ebp - 0x21e4]
call fcn.00451230
jmp 0x476129
push 0
push 0x54a72c
lea ecx, [ebp - 0x18]
call fcn.0046f880
test eax, eax
jl 0x47601a
push 0x54a72c
lea ecx, [ebp - 0x18]
call fcn.0044ea60
neg eax
sbb eax, eax
add eax, 1
movzx ecx, al
test ecx, ecx
je 0x475fb4
lea edx, [ebp - 0x42c]
push edx
push 0x544c8c
lea eax, [ebp - 0x18]
push eax
call fcn.00451560
add esp, 0xc
jmp 0x476015
push 0x567128
lea ecx, [ebp - 0x1a94]
call fcn.0044f380
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x42c]
push ecx
push 0x544c8c
lea edx, [ebp - 0x1a94]
push edx
call fcn.00451560
add esp, 0xc
mov eax, dword [ebp - 0x1a94]
push eax
push 0x54a72c
lea ecx, [ebp - 0x18]
call fcn.00459400
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1a94]
sub ecx, 0x10
mov dword [ebp - 0x2238], ecx
mov ecx, dword [ebp - 0x2238]
call fcn.00451230
jmp 0x476129
push 0x567128
lea ecx, [ebp - 0x18]
call fcn.0044ea60
neg eax
sbb eax, eax
neg eax
movzx edx, al
test edx, edx
je 0x476070
mov eax, 0x546394
test eax, eax
jne 0x476049
mov dword [ebp - 0x223c], 0
jmp 0x47605c
push 0x546394
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x223c], eax
mov ecx, dword [ebp - 0x223c]
push ecx
push 0x546394
lea ecx, [ebp - 0x18]
call fcn.0044ecb0
mov edx, 0x546398
test edx, edx
jne 0x476085
mov dword [ebp - 0x2240], 0
jmp 0x476098
push 0x546398
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2240], eax
mov eax, dword [ebp - 0x2240]
push eax
push 0x546398
lea ecx, [ebp - 0x18]
call fcn.0044ecb0
lea ecx, [ebp - 0x42c]
test ecx, ecx
jne 0x4760c2
mov dword [ebp - 0x2244], 0
jmp 0x4760d7
lea edx, [ebp - 0x42c]
push edx
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2244], eax
mov eax, dword [ebp - 0x2244]
push eax
lea ecx, [ebp - 0x42c]
push ecx
lea ecx, [ebp - 0x18]
call fcn.0044ecb0
mov edx, 0x546398
test edx, edx
jne 0x476102
mov dword [ebp - 0x2248], 0
jmp 0x476115
push 0x546398
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2248], eax
mov eax, dword [ebp - 0x2248]
push eax
push 0x546398
lea ecx, [ebp - 0x18]
call fcn.0044ecb0
push str.KQKQP
lea ecx, [ebp - 0x1064]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x476180
lea edx, [ebp - 0x42c]
test edx, edx
jne 0x476155
mov dword [ebp - 0x224c], 0
jmp 0x47616a
lea eax, [ebp - 0x42c]
push eax
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x224c], eax
mov ecx, dword [ebp - 0x224c]
push ecx
lea edx, [ebp - 0x42c]
push edx
lea ecx, [ebp - 0x18]
call fcn.0044fb50
mov eax, dword [ebp - 0xe54]
mov dword [ebp - 0x2250], eax
mov ecx, dword [ebp - 0x2250]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x47640e
xor edx, edx
mov word [ebp - 0x1e94], dx
push 0x3fe
push 0
lea eax, [ebp - 0x1e92]
push eax
call fcn.004f8090
add esp, 0xc
mov ecx, dword [ebp - 0x22a8]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x2254], edx
lea eax, [ebp - 0x1e94]
push eax
push 0
mov ecx, dword [ebp - 0x2254]
push ecx
call dword [sym.imp.SHELL32.dll_FindExecutableW]
lea edx, [ebp - 0x1e94]
push edx
call fcn.004f810a
add esp, 4
test eax, eax
jbe 0x476241
lea eax, [ebp - 0x1e94]
test eax, eax
jne 0x47620e
mov dword [ebp - 0x2258], 0
jmp 0x476223
lea ecx, [ebp - 0x1e94]
push ecx
call fcn.004f810a
add esp, 4
mov dword [ebp - 0x2258], eax
mov edx, dword [ebp - 0x2258]
push edx
lea eax, [ebp - 0x1e94]
push eax
lea ecx, [ebp - 0xe54]
call fcn.0044fb50
jmp 0x47640e
mov ecx, dword [ebp - 0xe54]
push ecx
mov edx, dword [ebp - 0x22a8]
mov eax, dword [edx + 0xc]
push eax
push str.PathFileExists__false__exePath___0_m_filename:_s_szAppPath:_s
lea ecx, [ebp - 0x1068]
push ecx
call fcn.00451560
add esp, 0x10
mov edx, dword [ebp - 0x1068]
mov dword [ebp - 0x434], edx
cmp dword [ebp - 0x434], 0
jne 0x47628a
mov dword [ebp - 0x22fc], 0
jmp 0x476354
mov eax, dword [ebp - 0x434]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x3fffffff
jle 0x4762b5
mov dword [ebp - 0x2300], 0
jmp 0x476348
mov eax, dword [ebp - 0x14]
shl eax, 1
call fcn.004f86f0
mov dword [ebp - 0x2260], esp
mov ecx, dword [ebp - 0x2264]
mov dword [ebp - 0x2300], ecx
cmp dword [ebp - 0x2260], 0
je 0x4762e3
cmp dword [ebp - 0x434], 0
jne 0x4762ef
mov dword [ebp - 0x2300], 0
jmp 0x476348
mov edx, dword [ebp - 0x2260]
mov byte [edx], 0
push 0
push 0
mov eax, dword [ebp - 0x14]
shl eax, 1
push eax
mov ecx, dword [ebp - 0x2260]
push ecx
push 0xffffffffffffffff
mov edx, dword [ebp - 0x434]
push edx
push 0
mov eax, dword [ebp - 0xe58]
push eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [ebp - 0x225c], eax
cmp dword [ebp - 0x225c], 0
jne 0x47633c
mov dword [ebp - 0x2300], 0
jmp 0x476348
mov ecx, dword [ebp - 0x2260]
mov dword [ebp - 0x2300], ecx
mov edx, dword [ebp - 0x2300]
mov dword [ebp - 0x22fc], edx
mov eax, dword [ebp - 0x22fc]
push eax
call fcn.0047c040
add esp, 4
mov dword [ebp - 0x1ec4], 0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x1068]
sub ecx, 0x10
mov dword [ebp - 0x2268], ecx
mov ecx, dword [ebp - 0x2268]
call fcn.00451230
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x18]
sub edx, 0x10
mov dword [ebp - 0x226c], edx
mov ecx, dword [ebp - 0x226c]
call fcn.00451230
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0xe54]
sub eax, 0x10
mov dword [ebp - 0x2270], eax
mov ecx, dword [ebp - 0x2270]
call fcn.00451230
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x43c]
sub ecx, 0x10
mov dword [ebp - 0x2274], ecx
mov ecx, dword [ebp - 0x2274]
call fcn.00451230
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x444]
sub edx, 0x10
mov dword [ebp - 0x2278], edx
mov ecx, dword [ebp - 0x2278]
call fcn.00451230
mov eax, dword [ebp - 0x1ec4]
jmp 0x47653d
push str.deal_with_office2013
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push 0
push str.Office15
lea ecx, [ebp - 0x444]
call fcn.0046f880
cmp eax, 0xffffffff
je 0x47646d
push 0
push 0x54a5f4
lea ecx, [ebp - 0x444]
call fcn.0046f880
cmp eax, 0xffffffff
je 0x47646d
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push 0x567128
push 0x54a5ec
lea ecx, [ebp - 0x18]
call fcn.00459400
mov ecx, dword [ebp - 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push str.deal_with_office2013
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov edx, dword [ebp - 0xe54]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov dword [ebp - 0x1ec8], 1
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x1068]
sub eax, 0x10
mov dword [ebp - 0x2294], eax
mov ecx, dword [ebp - 0x2294]
call fcn.00451230
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x18]
sub ecx, 0x10
mov dword [ebp - 0x2298], ecx
mov ecx, dword [ebp - 0x2298]
call fcn.00451230
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0xe54]
sub edx, 0x10
mov dword [ebp - 0x229c], edx
mov ecx, dword [ebp - 0x229c]
call fcn.00451230
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x43c]
sub eax, 0x10
mov dword [ebp - 0x22a0], eax
mov ecx, dword [ebp - 0x22a0]
call fcn.00451230
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x444]
sub ecx, 0x10
mov dword [ebp - 0x22a4], ecx
mov ecx, dword [ebp - 0x22a4]
call fcn.00451230
mov eax, dword [ebp - 0x1ec8]
lea esp, [ebp - 0x2304]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.004f8124
mov esp, ebp
pop ebp
ret 0x10