Function at 0x100365f0
Capabilities:
Get common file path

Disassembly:
mov eax, 0x10059654
call fcn.10057e90
sub esp, 0x114
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x88], ecx
test dl, dl
je 0x10036622
push ebx
push 0x45
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
jmp 0x10036e1f
mov dword [ebp - 0x1c], 0x1f19
cmp dword [ebp - 0x1c], 0x218b
jle 0x100366a6
mov edi, ebx
mov dword [ebp - 0x18], ebx
mov eax, ebx
mov dword [ebp - 0x14], 0x6307
mov dword [ebp - 0x30], eax
mov esi, ebx
mov ecx, esi
shl eax, cl
lea ecx, [ebp - 0x108]
xor eax, edi
cdq
push edx
push eax
call fcn.10001331
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10036663
mov eax, dword [eax]
push eax
call fcn.10040c20
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x108]
call fcn.10001542
mov eax, dword [ebp - 0x30]
inc esi
cmp esi, 0x38dc
jl 0x10036645
mov esi, dword [ebp - 0x18]
add eax, esi
dec dword [ebp - 0x14]
mov dword [ebp - 0x30], eax
jne 0x10036643
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0xd1b
jl 0x10036637
inc edi
cmp edi, 0x3cca
jl 0x10036634
push dword [ebp + 8]
lea ecx, [ebp - 0xb4]
call fcn.10004387
mov edi, dword [ebp + 0xc]
push ecx
push edi
lea ecx, [ebp - 0xb4]
mov dword [ebp - 4], ebx
call fcn.1003a686
mov dword [ebp - 0x30], eax
or esi, 0xffffffff
mov dword [ebp - 0x14], 1
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], 0xf
cmp dword [ebp - 0x14], 8
jge 0x10036736
mov dword [ebp - 0x1c], 0x515466bc
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x1c], ebx
je 0x10036712
push 1
push ebx
mov edx, 0x4017
mov ecx, 0x4f44
call fcn.10036e64
pop ecx
pop ecx
jmp 0x10036731
lea eax, [ebp - 0x54]
mov dword [ebp - 0x54], esi
push eax
push 0x62e0
mov edx, 0x35a5
xor cl, cl
call fcn.100390c9
pop ecx
pop ecx
cmp dword [ebp - 0x54], ebx
jne 0x10036736
dec dword [ebp - 0x14]
jmp 0x100366de
cmp dword [ebp - 0x30], esi
je 0x100369fd
mov dword [ebp - 0x24], esi
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x28], 0x84abf0a6
mov dword [ebp - 0x18], 0xe1c2a91
mov dword [ebp - 0x28], 3
mov dword [ebp - 0x24], 0x12
jmp 0x100367b1
mov dword [ebp - 0x18], 0x75286e87
mov dword [ebp - 0x18], 0x17
jmp 0x100367a9
mov dword [ebp - 0x14], 5
mov dword [ebp - 0x14], 3
cmp dword [ebp - 0x14], ebx
jl 0x100367a6
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x4c], ebx
jne 0x100367a6
dec dword [ebp - 0x14]
jns 0x10036798
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jle 0x10036785
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x10
je 0x10036775
mov dword [ebp - 0x1c], 0x2a1e
cmp dword [ebp - 0x1c], 0x2dba
jle 0x1003680d
mov edi, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], 0x150e
mov esi, ebx
mov ebx, dword [ebp - 0x14]
mov ecx, esi
mov eax, ebx
shl eax, cl
mov ecx, 0x10073038
cdq
push edx
push eax
call fcn.10004272
inc esi
cmp esi, 0x4f02
jl 0x100367d8
add ebx, edi
dec dword [ebp - 0x18]
push 0
mov dword [ebp - 0x14], ebx
pop ebx
jne 0x100367d3
inc edi
cmp edi, 0x3502
jl 0x100367c9
or esi, 0xffffffff
push 3
pop edi
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], ebx
jl 0x10036988
mov dword [ebp - 0x14], 0xc6d0f065
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x14], ebx
jmp 0x1003683c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x6c], 0xe6e40424
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003682e
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x4c]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x44]
cmp eax, 0x8b9b
setne cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x4c]
cmp eax, edx
setl cl
xor edx, edx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp + eax*4 - 0x4c]
mov eax, dword [ebp - 0x14]
cmp eax, ecx
mov eax, dword [ebp - 0x28]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x44]
setl cl
mov dword [ebp - 0x28], ecx
xor ecx, ecx
cmp dword [ebp - 0x28], eax
setge cl
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x18], 0x184eb300
mov eax, dword [ebp - 0x24]
cmp dword [ebp + eax*4 - 0x4c], ebx
je 0x100368d8
cmp dword [ebp - 0x68], ebx
je 0x100368d8
xor ecx, ecx
inc ecx
jmp 0x100368da
mov ecx, ebx
mov eax, dword [ebp - 0x24]
add eax, ecx
xor ecx, ecx
cmp eax, 1
setge cl
imul ecx, dword [ebp - 0x24]
mov dword [ebp - 0x14], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp + eax*4 - 0x4c]
cmp eax, 0xbfbd
setl cl
xor edx, edx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x44]
cmp ecx, eax
setg dl
xor eax, eax
cmp dword [ebp - 0x28], edx
setl al
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], ebx
jmp 0x1003697a
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x18], ebx
jmp 0x10036934
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd8], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10036927
mov dword [ebp - 0x18], ebx
jmp 0x10036971
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x6c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp + eax*4 - 0x6c]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setg dl
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x44]
cmp edx, eax
setg cl
mov dword [ebp - 0xd8], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 1
jle 0x1003693f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jle 0x1003691f
dec dword [ebp - 0x24]
jns 0x1003681c
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c], 0x26a4
jge 0x100369c5
mov edx, str.mrufbmlah_podkbw_lxx_oqwmckg_uizepsojs_qcewgrow_spzaa_vxkmttui_cvbv_zwcvff_bxj_eyzdvoh_hoyvbd_gxooyfpj
mov ecx, 0x10073038
call fcn.100062fd
jmp 0x100369c5
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0xb4]
mov eax, dword [ebp - 0x30]
inc eax
push eax
push ebx
lea eax, [ebp - 0x120]
push eax
call fcn.1003a70c
push eax
lea ecx, [ebp - 0xb4]
call fcn.1001f1a2
push ebx
push 1
lea ecx, [ebp - 0x120]
call fcn.10004836
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x2c], 0x75c96dd1
mov dword [ebp - 0x2c], 0xfffffff3
jmp 0x10036a99
mov dword [ebp - 0x38], 0xa9ef72d4
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x38], ebx
jmp 0x10036a90
mov dword [ebp - 0x84], 0x90c54408
lea ecx, [ebp - 0xc0]
push 1
call fcn.100013ad
mov byte [ebp - 4], 3
mov dword [ebp - 0x14], ebx
jmp 0x10036a55
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xc0]
mov dword [eax + ecx*4], 0x5714ffd8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10036a42
lea eax, [ebp - 0xc0]
push eax
push ecx
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0x84]
push eax
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0x38]
call fcn.10036fbb
add esp, 0x10
mov byte [ebp - 4], bl
lea ecx, [ebp - 0xc0]
call fcn.1000140a
dec dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xfffffff0
jl 0x10036a22
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffec
jg 0x10036a10
mov dword [ebp - 0x2c], 0xffffffe5
jmp 0x10036aca
push 0x2d28
push 1
push 0x1f8b
mov edx, 0x350a
xor cl, cl
call fcn.10039082
add esp, 0xc
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xffffffea
jne 0x10036aac
push ecx
push edi
lea ecx, [ebp - 0xb4]
call fcn.1003a602
mov dword [ebp - 0x30], eax
mov eax, 0x70ade216
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x28], 0xdc5336de
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0x1c], 0xf7b1466a
mov dword [ebp - 0x1c], 0xbe26b5cf
mov dword [ebp - 0x14], ebx
jmp 0x10036b26
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe0], 0x813c27f3
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10036b15
cmp dword [ebp - 0x58], ebx
jne 0x10036b9e
mov eax, dword [ebp - 0x18]
xor edx, edx
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
cmp ecx, eax
setge dl
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], 0x936be856
mov eax, dword [ebp - 0x58]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setne dl
mov dword [ebp - 0x1c], edx
xor edx, edx
cmp dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x28]
setne dl
xor ecx, ecx
cmp eax, edx
mov eax, 0xa0d461e3
setne cl
cmp eax, ecx
mov eax, dword [ebp - 0x58]
sbb ecx, ecx
neg ecx
imul ecx, eax
mov eax, dword [ebp - 0x58]
imul eax, ecx
xor ecx, ecx
cmp ecx, eax
sbb eax, eax
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x18]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x30], esi
je 0x10036d7c
push dword [ebp - 0x50]
movdqa xmm0, xmmword [str._t_t_t_t]
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 0xf0]
mov dword [ebp - 0x20], 0xfffffffc
push eax
push ebx
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x78], ebx
movdqu xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x70], ebx
call fcn.10006820
mov byte [ebp - 4], 4
xor ecx, ecx
mov dword [ebp - 0x7c], 0x6add33d7
inc ecx
mov dword [ebp - 0x14], ebx
jmp 0x10036c0a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x34], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10036c00
mov dword [ebp - 0x20], ebx
cmp dword [ebp - 0x20], ebx
jl 0x10036cdf
mov dword [ebp - 0x1c], 0x83674579
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x1c], ebx
push 3
call fcn.100013ad
push ebx
push ebx
lea edx, [ebp - 0x9c]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xd0]
call fcn.10036e64
mov eax, dword [ebp - 0x20]
xor edx, edx
pop ecx
pop ecx
mov eax, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x34]
cmp eax, 0x3ee76373
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
setge dl
imul ecx, edx
xor edx, edx
add eax, ecx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + eax*4 - 0x34]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setg dl
mov eax, dword [ebp + eax*4 - 0x34]
sub edx, eax
mov eax, dword [ebp - 0x9c]
mov dword [eax], edx
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfff9
jne 0x10036cb2
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
xor ecx, ecx
mov eax, dword [ebp - 0x9c]
cmp dword [eax], ebx
mov eax, dword [ebp - 0x78]
setne cl
mov byte [ebp - 4], 4
mov dword [eax], ecx
lea ecx, [ebp - 0x9c]
call fcn.1000140a
dec dword [ebp - 0x20]
jns 0x10036c1b
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10036d49
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0x80], 0x38140a97
mov dword [ebp - 0x3c], 3
cmp dword [ebp - 0x3c], ebx
jl 0x10036d28
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x8c], ebx
push eax
push 0x115d
mov edx, 0x1188
call fcn.1003829a
dec dword [ebp - 0x3c]
pop ecx
pop ecx
jns 0x10036d05
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x7c]
push eax
push ecx
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x20]
call fcn.10036e30
add esp, 0x14
dec dword [ebp - 0x20]
jns 0x10036ceb
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], bl
call fcn.1000140a
push 0x6b96
push 0x3a38
lea eax, [ebp - 0xb4]
xor dl, dl
push eax
push 0x324e
push 0x21fc
lea ecx, [ebp - 0x30]
call fcn.10037024
add esp, 0x14
push 2
lea ecx, [ebp - 0xcc]
call fcn.100013ad
mov byte [ebp - 4], 6
mov dword [ebp - 0x50], 2
mov dword [ebp - 0x14], ebx
jmp 0x10036dac
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xcc]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x10036d99
push 0xde2
push 0x59
push 0x5a61
push ecx
xor dl, dl
call fcn.10036592
add esp, 0x10
lea eax, [ebp - 0x50]
lea edx, [ebp - 0xcc]
push eax
push ecx
push 0x446e
push 0x5a9
mov ecx, 0x7096
call fcn.10038b93
add esp, 0x10
mov byte [ebp - 4], bl
lea ecx, [ebp - 0xcc]
call fcn.1000140a
mov ecx, dword [ebp - 0x88]
lea eax, [ebp - 0xb4]
cmp ecx, eax
je 0x10036e11
push esi
push ebx
push eax
call fcn.10004708
push ebx
push 1
lea ecx, [ebp - 0xb4]
call fcn.10004836
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret