Function at 0x402d13
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4aebcf
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x8c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
movzx eax, byte [ebp + 0xc]
test eax, eax
je 0x402e67
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x44], 0x237b
mov dword [ebp - 0x84], str.qalyqcdqm_wqo_gkvcg_joeeniff_lql_scoudzd
cmp dword [ebp - 0x44], 0x23e8
jle 0x402e13
and dword [ebp - 0x30], 0
jmp 0x402d7b
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x2197
jge 0x402df4
and dword [ebp - 0x38], 0
jmp 0x402d91
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x3d23
jge 0x402df2
and dword [ebp - 0x20], 0
jmp 0x402da7
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x1965
jge 0x402df0
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x30]
shl eax, cl
cdq
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
push dword [ebp - 0x64]
push dword [ebp - 0x68]
lea ecx, [ebp - 0x9c]
call fcn.004019d3
pop ecx
pop ecx
mov ecx, eax
call fcn.00441f2b
push eax
call fcn.00499008
pop ecx
lea ecx, [ebp - 0x9c]
call fcn.00441f21
jmp 0x402da0
jmp 0x402d8a
jmp 0x402d74
push 0x1203
push 0xa10
push 0x1e48
push 0x169e
push 0x12c3
call dword [sym.imp.GDI32.dll_Rectangle]
push dword [ebp - 0x78]
push 1
push dword [ebp - 0x58]
call fcn.004030a6
add esp, 0xc
and dword [ebp - 4], 0
cmp dword [ebp - 0x44], 0x1fe1
jge 0x402e3c
push dword [ebp - 0x84]
call fcn.00499008
pop ecx
jmp 0x402e58
or dword [ebp - 4], 0xffffffff
jmp 0x402e62
jmp 0x403095
mov dword [ebp - 0x48], 0x7690
mov dword [ebp - 0x60], str.qsr_cxxxuq_eipievk_iwx_lwng_tbmbjjdvx_iglkhwe_cfpuuqu_qap_eqybb_kyzjv_ndpygkzuw
cmp dword [ebp - 0x48], 0x79ae
jle 0x402f08
push 0x1181
push 0x26a6
push 0
push 0
push 0xe95
push 0x11
call dword [sym.imp.USER32.dll_ToUnicode]
and dword [ebp - 0x28], 0
jmp 0x402eaa
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x318d
jge 0x402f08
and dword [ebp - 0x18], 0
jmp 0x402ec0
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x7f12
jge 0x402f06
and dword [ebp - 0x1c], 0
jmp 0x402ed6
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x145a
jge 0x402f04
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
sar eax, cl
cdq
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], edx
push dword [ebp - 0x70]
push dword [ebp - 0x74]
mov ecx, 0xae0558
call fcn.00441f36
jmp 0x402ecf
jmp 0x402eb9
jmp 0x402ea3
lea eax, [ebp + 8]
mov dword [ebp - 0x50], eax
mov dword [ebp - 4], 2
cmp dword [ebp - 0x48], 0x765f
jge 0x402f2b
mov edx, dword [ebp - 0x60]
mov ecx, 0xae0558
call fcn.004438dc
jmp 0x402f47
or dword [ebp - 4], 0xffffffff
jmp 0x402f51
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x4c], 0xc8d
mov dword [ebp - 0x5c], str.kojpxt_cldaswt_dufcfavba_dobpzfuc_aqkg_atus_ohvfttvrj
cmp dword [ebp - 0x4c], 0xe98
jle 0x403019
and dword [ebp - 0x24], 0
jmp 0x402f7f
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x23d4
jge 0x403001
and dword [ebp - 0x2c], 0
jmp 0x402f95
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x53c5
jge 0x402ffc
and dword [ebp - 0x34], 0
jmp 0x402fab
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0x2e78
jge 0x402ffa
and dword [ebp - 0x3c], 0
jmp 0x402fc1
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0x3ffa
jge 0x402ff8
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x2c]
sar esi, cl
mov eax, dword [ebp - 0x34]
cdq
idiv dword [ebp - 0x3c]
mov ecx, edx
shl esi, cl
mov eax, esi
cdq
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], edx
push dword [ebp - 0x7c]
push dword [ebp - 0x80]
mov ecx, 0xae0558
call fcn.00441f36
jmp 0x402fba
jmp 0x402fa4
jmp 0x402f8e
jmp 0x402f78
push 0x835
push 0
push 0xadf
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CompareStringW]
mov eax, dword [ebp - 0x50]
movzx eax, byte [eax]
test eax, eax
je 0x40303c
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x40]
mov dword [ecx], eax
jmp 0x403052
mov byte [ebp - 0x11], 0
movzx eax, byte [ebp - 0x11]
test eax, eax
je 0x403052
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
mov dword [ebp - 4], 4
cmp dword [ebp - 0x4c], 0xc7f
jge 0x40306f
mov edx, dword [ebp - 0x5c]
mov ecx, 0xae0558
call fcn.004438dc
jmp 0x40308b
or dword [ebp - 4], 0xffffffff
jmp 0x403095
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret