Function at 0x4312c0
Capabilities:
Create directory
Get common file path

Disassembly:
push 0xffffffffffffffff
push 0x4569eb
mov eax, dword fs:[0]
push eax
sub esp, 0x448
mov eax, dword [0x46e3d8]
xor eax, esp
mov dword [esp + 0x440], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x46e3d8]
xor eax, esp
push eax
lea eax, [esp + 0x45c]
mov dword fs:[0], eax
mov eax, dword [esp + 0x46c]
xor ebx, ebx
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
push eax
lea eax, [esp + 0x250]
push 0x104
mov dword [esp + 0x46c], ebx
push eax
mov dword [0x46fa60], ebx
call fcn.0043f42c
add esp, 0xc
mov edx, str.report
call fcn.00401ee0
test eax, eax
mov ebp, dword [sym.imp.SHLWAPI.dll_PathAppendW]
je 0x431404
mov ecx, str.report
call fcn.00401f80
push eax
lea ecx, [esp + 0x48]
push 0x104
push ecx
call fcn.0043f42c
add esp, 0xc
lea edx, [esp + 0x44]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
cmp word [eax], bx
je 0x4313e7
lea eax, [esp + 0x44]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
lea ecx, [esp + 0x44]
push ecx
mov edi, eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea esi, [esp + 0x44]
call fcn.004275c0
test al, al
push edi
push 0x104
jne 0x4313c8
lea edx, [esp + 0x254]
push edx
call fcn.0043f42c
add esp, 0xc
call fcn.00435950
push eax
push 0x104
mov eax, esi
push eax
jmp 0x43143a
lea ecx, [esp + 0x254]
push ecx
call fcn.0043f42c
add esp, 0xc
lea edx, [esp + 0x44]
push edx
push 0x104
mov eax, edx
push eax
jmp 0x43143a
lea esi, [esp + 0x44]
call fcn.004275c0
test al, al
jne 0x431442
call fcn.00435950
push eax
push 0x104
mov ecx, esi
push ecx
jmp 0x43143a
push 0x104
push 0x470ff0
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
push 0x470ff0
call dword [sym.imp.SHLWAPI.dll_PathStripToRootW]
push str.IntelLogs
push 0x470ff0
call ebp
push 0x470ff0
push 0x104
lea edx, [esp + 0x4c]
push edx
call fcn.0043f42c
add esp, 0xc
push ebx
lea eax, [esp + 0x48]
push eax
push ebx
call dword [sym.imp.SHELL32.dll_SHCreateDirectoryExW]
lea ecx, [esp + 0x24c]
push ecx
lea edx, [esp + 0x48]
push edx
call ebp
lea eax, [esp + 0x44]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x431465
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0x48]
push eax
mov esi, 0x46fa44
call fcn.00404170
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx edx, word [esp + 0x26]
movzx eax, word [esp + 0x24]
movzx ecx, word [esp + 0x22]
push edx
movzx edx, word [esp + 0x24]
push eax
movzx eax, word [esp + 0x20]
push ecx
movzx ecx, word [esp + 0x2a]
push edx
movzx edx, word [esp + 0x2a]
push eax
push ecx
push edx
push str._____d__02d__d__02d:_02d:_02d:_03d
push 0x46fa40
xor eax, eax
call fcn.00431730
add esp, 0x24
push str.Install_Configuration
push str.__s_
push 0x46fa40
xor eax, eax
call fcn.00431730
lea eax, [esp + 0x34]
add esp, 0xc
mov ebp, 1
add dword [0x46fa60], ebp
push eax
call fcn.00426aa0
mov eax, dword [esp + 0x30]
mov edi, 8
add esp, 4
cmp dword [esp + 0x40], edi
jae 0x431511
lea eax, [esp + 0x2c]
push eax
push str.Installer_Version:__s
push 0x46fa40
xor eax, eax
call fcn.00431730
add esp, 0xc
push str.Thu_Nov_15_11:09:02_2012
push str.Compile_date___s
push 0x46fa40
xor eax, eax
call fcn.00431730
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
push str.OS_command_line___s
push 0x46fa40
xor eax, eax
call fcn.00431730
mov eax, dword [0x470cc0]
add esp, 0xc
cmp dword [0x470cd4], edi
jae 0x43156c
mov eax, 0x470cc0
push eax
push str.Effective_command_line___s
push 0x46fa40
xor eax, eax
call fcn.00431730
add esp, 0xc
call fcn.00435a40
push eax
push str.Windows_Version___s
push 0x46fa40
xor eax, eax
call fcn.00431730
add esp, 0xc
push str.IsWow64Process
push str.kernel32
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
cmp esi, ebx
je 0x4315d8
lea ecx, [esp + 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
cmp dword [esp + 0x14], ebx
setne al
cmp al, bl
je 0x4315d8
push str.Platform__64_bit
jmp 0x4315ed
call fcn.00435e70
test al, al
je 0x4315e8
push str.Platform__Itanium
jmp 0x4315ed
push str.Platform__32_bit
push 0x46fa40
xor eax, eax
call fcn.00431730
add esp, 8
push 0x464b84
push str.Core_Version___s
push 0x46fa40
xor eax, eax
call fcn.00431730
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, eax
mov eax, 0x10624dd3
mul edx
shr edx, 6
push edx
push str.System_up_time___d_sec
push 0x46fa40
xor eax, eax
call fcn.00431730
sub dword [0x46fa60], ebp
add esp, 0xc
cmp dword [esp + 0x40], edi
jb 0x431655
mov eax, dword [esp + 0x2c]
push eax
call fcn.0043e965
add esp, 4
mov ecx, dword [esp + 0x45c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x440]
xor ecx, esp
call fcn.0043d02a
add esp, 0x454
ret 4