Function at 0x401e11
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x234
push esi
push edi
mov dword [ebp - 0x224], 0x64f
mov dword [ebp - 0x228], 0x25b4
mov dword [ebp - 0x22c], 0x12b5
mov dword [ebp - 0x230], 0xb
mov dword [ebp - 0x234], 3
mov eax, dword [ebp - 0x234]
or eax, eax
jl 0x401e6f
cmp eax, dword [0x4040e0]
jge 0x401e6f
movsx eax, byte [eax + 0x4040e4]
cmp eax, 0x80
jle 0x401e85
add dword [ebp - 0x234], 0x14b
cmp dword [ebp - 0x234], 0x12cc
jl 0x401e4e
add dword [ebp - 0x230], 0x189
cmp dword [ebp - 0x230], 0xacd
jl 0x401e44
add dword [ebp - 0x22c], 0xfffffe00
cmp dword [ebp - 0x22c], 0xe
jg 0x401e3a
add dword [ebp - 0x228], 0xfffffcb3
cmp dword [ebp - 0x228], 0xf
jg 0x401e30
add dword [ebp - 0x224], 0xffffff30
cmp dword [ebp - 0x224], 0xe
jg 0x401e26
push 0
call sub.KERNEL32.dll_GetModuleHandleA
mov esi, eax
lea eax, [ebp - 0x104]
push eax
push 0x104
call sub.KERNEL32.dll_GetTempPathA
mov dword [ebp - 0x224], 0x25a0
mov eax, dword [ebp - 0x224]
or eax, eax
jl 0x401f25
cmp eax, dword [0x4040e0]
jge 0x401f25
movsx eax, byte [eax + 0x4040e4]
cmp eax, 0x81
jle 0x40201f
mov dword [ebp - 0x228], 0x1c9a
jmp 0x401fee
mov eax, dword [ebp - 0x228]
or eax, eax
jl 0x401f59
cmp eax, dword [0x4040e0]
jge 0x401f59
movsx eax, byte [eax + 0x4040e4]
cmp eax, 0xa8
jle 0x402008
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x22c], eax
jmp 0x401fce
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x230], eax
jmp 0x401fb5
mov dword [ebp - 0x234], 0x2061
mov eax, dword [ebp - 0x234]
or eax, eax
jl 0x401f9b
cmp eax, dword [0x4040e0]
jge 0x401f9b
cmp byte [eax + 0x4040e4], 0x3a
jg 0x401fae
add dword [ebp - 0x234], 0xfffffd5c
cmp dword [ebp - 0x234], 0x3d
jg 0x401f7f
add dword [ebp - 0x230], 0x4e
mov eax, dword [ebp - 0x230]
cmp eax, dword [ebp - 0x224]
jge 0x401fc7
or eax, eax
jg 0x401f75
add dword [ebp - 0x22c], 0x5a
mov eax, dword [ebp - 0x22c]
cmp eax, dword [ebp - 0x228]
jle 0x401fe4
cmp eax, dword [0x4040e0]
jl 0x401f67
add dword [ebp - 0x228], 0x2cb
mov eax, dword [ebp - 0x228]
cmp eax, dword [ebp - 0x224]
jle 0x402008
cmp eax, dword [0x4040e0]
jl 0x401f34
add dword [ebp - 0x224], 0xfffffe01
cmp dword [ebp - 0x224], 0x63
jg 0x401f00
and dword [ebp - 0x10c], 0
and dword [ebp - 0x108], 0
mov dword [ebp - 0x118], 0xc
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x114], eax
push 0
push 0
push 3
push 0
push 0
push 0x80000000
lea eax, [ebp - 0x104]
push eax
call sub.KERNEL32.dll_CreateFileA
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x224], 0xcf9
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x228], eax
jmp 0x4020bf
mov dword [ebp - 0x22c], 0x1b8c
mov eax, dword [ebp - 0x22c]
or eax, eax
jl 0x4020a2
cmp eax, dword [0x4040e0]
jge 0x4020a2
cmp byte [eax + 0x4040e4], 0x3c
jge 0x4020b5
add dword [ebp - 0x22c], 0xfffffe22
cmp dword [ebp - 0x22c], 6
jg 0x402086
add dword [ebp - 0x228], 0x32b
mov eax, dword [ebp - 0x228]
cmp eax, 0x1961
jge 0x4020d0
or eax, eax
jg 0x40207c
sub dword [ebp - 0x224], 0xc9
cmp dword [ebp - 0x224], 0xa
jg 0x40206e
call sub.KERNEL32.dll_GetLastError
mov edi, eax
sub edi, 3
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x21c]
push eax
call sub.KERNEL32.dll_lstrcpyA
push 0
push 0
push 0
push 2
push 0
push esi
call sub.KERNEL32.dll_CreateFileMappingA
mov eax, edi
pop edi
pop esi
leave
ret