Function at 0x45ba74
Capabilities:
Create process on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x7d
push 0
push 0
dec ecx
jne 0x45ba7c
push ecx
push ebx
push esi
push edi
xor eax, eax
push ebp
push 0x45bdc5
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x10c]
xor ecx, ecx
mov edx, 0x10c
call fcn.00402ccc
lea eax, [ebp - 0x218]
xor ecx, ecx
mov edx, 0x10c
call fcn.00402ccc
push 0x40
lea edx, [ebp - 0x250]
mov eax, dword [0x45e1b4]
mov eax, dword [eax]
call fcn.004587a0
mov ecx, dword [ebp - 0x250]
mov dl, 1
mov eax, dword [0x415898]
call fcn.00419734
mov ebx, eax
mov eax, ebx
mov edx, dword [eax]
call dword [edx]
mov edx, eax
sub edx, 0x218
xor ecx, ecx
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x14]
lea edx, [ebp - 0x10c]
mov ecx, 0x10c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
lea eax, [ebp - 0x254]
lea edx, [ebp - 0x10c]
mov ecx, 0x105
call fcn.004042fc
mov eax, dword [ebp - 0x254]
mov edx, 0x45bddc
call fcn.00404498
je 0x45bb3e
mov eax, ebx
call fcn.004032b8
jmp 0x45bd87
xor ecx, ecx
xor edx, edx
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x14]
push 0x32
lea eax, [ebp - 0x24b]
push eax
call sub.kernel32.dll_GetSystemDirectoryA
push 0xffff
lea eax, [ebp - 0x28c]
lea edx, [ebp - 0x24b]
mov ecx, 0x33
call fcn.00402dcc
lea edx, [ebp - 0x28c]
lea eax, [ebp - 0x2c4]
call fcn.00402bb0
mov edx, 0x45bde4
lea eax, [ebp - 0x2c4]
mov cl, 0x34
call fcn.00402b80
lea edx, [ebp - 0x2c4]
lea eax, [ebp - 0x258]
call fcn.004042f0
lea eax, [ebp - 0x258]
push eax
lea edx, [ebp - 0x2c8]
mov eax, 0x45bdf0
call fcn.00408b1c
mov edx, dword [ebp - 0x2c8]
pop eax
call fcn.00404354
mov ecx, dword [ebp - 0x258]
mov dl, 1
mov eax, dword [0x415898]
call fcn.00419734
mov esi, eax
mov eax, dword [ebp - 4]
cdq
push edx
push eax
mov edx, ebx
mov eax, esi
call fcn.0041951c
mov eax, esi
call fcn.004032b8
push 0
lea eax, [ebp - 0x2cc]
lea edx, [ebp - 0x24b]
mov ecx, 0x33
call fcn.004042fc
lea eax, [ebp - 0x2cc]
mov edx, 0x45be04
call fcn.00404354
mov eax, dword [ebp - 0x2cc]
call fcn.0040454c
push eax
call sub.kernel32.dll_WinExec
lea edx, [ebp - 0x218]
mov ecx, 0x10c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
xor ecx, ecx
mov edx, dword [ebp - 4]
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x14]
mov eax, 0xff
call fcn.004026dc
mov esi, eax
push esi
push 0xff
call sub.kernel32.dll_GetTempPathA
push 0xffff
lea eax, [ebp - 0x3d4]
mov edx, esi
call fcn.00402dc0
lea edx, [ebp - 0x3d4]
lea eax, [ebp - 0x2d4]
call fcn.004042f0
push dword [ebp - 0x2d4]
push 0x45be18
lea eax, [ebp - 0x3dc]
lea edx, [ebp - 0x218]
mov ecx, 0x105
call fcn.004042fc
mov eax, dword [ebp - 0x3dc]
lea edx, [ebp - 0x3d8]
call fcn.00408b1c
push dword [ebp - 0x3d8]
lea eax, [ebp - 0x2d0]
mov edx, 3
call fcn.0040440c
mov ecx, dword [ebp - 0x2d0]
mov dl, 1
mov eax, dword [0x415898]
call fcn.00419734
mov edi, eax
mov eax, dword [ebp - 0x110]
cdq
push edx
push eax
mov edx, ebx
mov eax, edi
call fcn.0041951c
mov eax, edi
call fcn.004032b8
push 1
lea eax, [ebp - 0x3d4]
mov edx, esi
call fcn.00402dc0
lea edx, [ebp - 0x3d4]
lea eax, [ebp - 0x3e4]
call fcn.004042f0
push dword [ebp - 0x3e4]
push 0x45be18
lea eax, [ebp - 0x3ec]
lea edx, [ebp - 0x218]
mov ecx, 0x105
call fcn.004042fc
mov eax, dword [ebp - 0x3ec]
lea edx, [ebp - 0x3e8]
call fcn.00408b1c
push dword [ebp - 0x3e8]
lea eax, [ebp - 0x3e0]
mov edx, 3
call fcn.0040440c
mov eax, dword [ebp - 0x3e0]
call fcn.0040454c
push eax
call sub.kernel32.dll_WinExec
mov eax, esi
call fcn.004026fc
mov eax, ebx
call fcn.004032b8
push 0
call sub.user32.dll_PostQuitMessage
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45bdcc
lea eax, [ebp - 0x3ec]
mov edx, 6
call fcn.004040b0
lea eax, [ebp - 0x2d4]
mov edx, 4
call fcn.004040b0
lea eax, [ebp - 0x258]
mov edx, 3
call fcn.004040b0
ret