Function at 0x432170
Capabilities:
Get common file path
Query environment variable

Disassembly:
push ecx
mov eax, dword [0x46b034]
push ebx
push esi
lea ecx, [eax - 0x6d]
cmp ecx, 0x243a
push edi
mov edi, 9
lea esi, [eax + eax*2 + 9]
jbe 0x432190
lea esi, [eax + 0x35]
mov ecx, dword [0x46b040]
jbe 0x43219c
lea esi, [ecx + eax + 0x2c]
mov edx, 0x1d
cmp ecx, esi
je 0x4321c0
cmp ecx, 0x3bf
lea esi, [ecx + eax - 4]
je 0x4321c0
add edx, 1
cmp edx, 0x1216
lea esi, [ecx + eax + 0x2c]
jl 0x4321a1
mov ecx, 0xa
sub ecx, eax
mov dword [0x46b03c], ecx
mov ecx, 0x1d
mov dword [0x4889d4], ecx
cmp eax, edi
je 0x4321f6
cmp eax, 0x3bf
lea edi, [eax + esi - 4]
je 0x4321f6
add ecx, 1
cmp ecx, 0x1216
lea edi, [eax + esi + 0x2c]
jl 0x4321d8
push 0x488378
push 0x1d7
mov dword [0x4889d4], ecx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov ecx, dword [0x46b034]
add ecx, eax
mov eax, 0xe6c2b449
mul edi
shr edx, 7
cmp ecx, edx
mov dword [0x46b034], ecx
je 0x432233
lea esi, [ecx + esi*2 + 0x185b4]
add esi, edi
jmp 0x43223a
mov esi, edi
sub esi, ecx
add esi, 7
push esi
push 3
push edi
push str.prove
push 0x48b698
call fcn.00431770
add esp, 8
mov ecx, eax
call fcn.00431930
mov ecx, eax
call fcn.00431930
mov ecx, eax
call fcn.00431930
mov eax, dword [0x46b040]
lea edx, [eax - 0x6d]
cmp edx, 0x243a
jbe 0x43227f
mov ecx, dword [0x46b03c]
lea esi, [ecx + eax + 0x2c]
push 0x10b
push 0x488378
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov ecx, dword [0x46b034]
add ecx, eax
cmp ecx, 0x93f61
mov dword [0x46b034], ecx
jne 0x4323ce
call fcn.00401a20
call fcn.00401a20
mov edi, dword [0x46b034]
add edi, 6
call fcn.00401380
mov eax, fcn.00401a20
sub eax, 0x456970
mov ecx, edi
add eax, 7
add esi, 0x46236c
sub ecx, 0x22
je 0x43230d
sub ecx, 0x5f
je 0x4322ff
mov ecx, 0x456970
imul ecx, ecx
add ecx, edi
lea edx, [edi + ecx*2]
lea ecx, [ecx + edx + 0x185b4]
jmp 0x432317
lea edx, [esi + 0x45699d]
mov dword [0x46b040], edx
jmp 0x43231d
lea edi, [esi + 0x45693e]
lea ecx, [esi + edi - 4]
mov dword [0x46b040], ecx
mov edx, esi
sub edx, edi
add eax, 0x46b0a8
add edx, 0xf5
cmp edx, eax
jne 0x432334
lea esi, [eax + edi + 0x2c]
mov ecx, dword [0x46b034]
mov edx, esi
sub edx, ecx
add edx, 7
mov dword [0x46b03c], edx
mov edx, eax
imul edx, edx, 0x14925
add ecx, edx
mov dword [0x46b034], ecx
call fcn.00401a20
mov ecx, 0x456970
imul ecx, ecx, 0x14925
mov dword [0x46b040], 0x456970
lea ebx, [eax + ecx + 0x457418]
call fcn.00401380
mov eax, dword [0x46b034]
mov edx, 7
sub edx, dword [0x46b040]
lea edi, [eax + edi*2 + 0x185b4]
add ebx, edx
add edi, ebx
lea ecx, [edi - 0x6d]
add esi, 0x46236c
cmp ecx, 0x243a
mov dword [0x46b040], 0x4555e8
jbe 0x4323bd
lea edx, [esi + edi + 0x2c]
mov dword [0x46b040], edx
mov eax, esi
sub eax, edi
add eax, 0xf5
cmp eax, ebx
jne 0x4323ce
lea esi, [ebx + edi + 0x2c]
push ebp
push 0x191
push 0x488378
push str.Morn
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov eax, dword [0x46b034]
mov ecx, edi
imul ecx, ecx, 0x14926
lea ebp, [ecx + esi - 4]
mov ecx, 0x1d
mov dword [0x4889d4], ecx
cmp eax, edi
je 0x43241e
cmp eax, 0x3bf
lea edi, [eax + esi - 4]
je 0x43241e
add ecx, 1
cmp ecx, 0x1216
lea edi, [eax + esi + 0x2c]
jl 0x432400
push 0x175
push 0x488378
mov dword [0x4889d4], ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov edx, dword [0x46b03c]
mov ebx, dword [0x46b034]
lea ecx, [edx + esi + 3]
add ebx, eax
mov dword [0x46b040], ecx
mov eax, 0x1d
cmp ecx, esi
je 0x43246b
cmp ecx, 0x3bf
je 0x43246b
add eax, 1
cmp eax, 0x1216
lea esi, [ecx + ecx + 0x2c]
jl 0x432451
lea eax, [edx + ebp]
lea eax, [ebx + eax - 0x54]
mov esi, 0x1d
mov dword [0x46b034], eax
lea ebx, [ecx + ebp + 0x2c]
mov dword [0x4889d4], esi
cmp eax, edi
je 0x4324a4
cmp eax, 0x3bf
lea edi, [eax + ebx - 4]
je 0x4324a4
add esi, 1
cmp esi, 0x1216
lea edi, [eax + ebx + 0x2c]
jl 0x432486
mov ebp, ebx
sub ebp, edx
mov eax, 0xe6c2b449
mul ecx
shr edx, 7
add ebp, 7
cmp ebx, edx
mov dword [0x4889d4], esi
mov dword [0x488368], 0x4840d8
je 0x4324d8
lea edi, [ecx + edi*2 + 0x185b4]
add edi, ebx
mov dword [esp + 0x10], edi
jmp 0x4324e1
sub ecx, ebx
add ecx, 7
mov dword [esp + 0x10], ecx
sub ebp, dword [0x46b040]
mov ecx, 0x2a8
mov esi, 0x456970
mov edi, 0x4840d8
rep movsd dword es:[edi], dword [esi]
push 6
lea ebx, [ebx + ebp*2 + 0x26]
push 9
push ebx
movsw word es:[edi], word [esi]
call fcn.0042df50
mov ecx, dword [esp + 0x1c]
mov dword [0x46b03c], eax
add esp, 0xc
mov eax, ecx
sub eax, 0x22
pop ebp
je 0x432557
sub eax, 0x5f
mov eax, dword [0x46b034]
je 0x432544
imul eax, eax
add eax, ecx
lea ecx, [ecx + eax*2]
pop edi
lea edx, [eax + ecx + 0x185b4]
pop esi
mov dword [0x46b034], edx
xor eax, eax
pop ebx
pop ecx
ret 0x10
pop edi
lea ecx, [eax + ebx + 0x2d]
pop esi
mov dword [0x46b034], ecx
xor eax, eax
pop ebx
pop ecx
ret 0x10
mov edx, dword [0x46b034]
lea eax, [edx + ebx*2 - 0x36]
pop edi
pop esi
mov dword [0x46b034], eax
xor eax, eax
pop ebx
pop ecx
ret 0x10