Function at 0x2102daaa
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1b8
cmp dword [ebp + 8], 0
je 0x2102dac2
mov eax, dword [ebp + 8]
mov dword [eax], 0
cmp dword [ebp + 0xc], 0
je 0x2102dad1
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 0
cmp dword [ebp + 0x10], 0
je 0x2102dae0
mov edx, dword [ebp + 0x10]
mov dword [edx], 0
cmp dword [ebp + 0x14], 0
je 0x2102daee
mov eax, dword [ebp + 0x14]
mov word [eax], 0
cmp dword [ebp + 0x18], 0
je 0x2102dafc
mov ecx, dword [ebp + 0x18]
mov word [ecx], 0
cmp dword [ebp + 0x1c], 0
je 0x2102db0a
mov edx, dword [ebp + 0x1c]
mov word [edx], 0
push 0x9c
push 0
lea eax, [ebp - 0xa0]
push eax
call fcn.210493f0
add esp, 0xc
mov dword [ebp - 0xa0], 0x9c
lea ecx, [ebp - 0xa0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0
jne 0x2102db7c
push 0x9c
push 0
lea edx, [ebp - 0xa0]
push edx
call fcn.210493f0
add esp, 0xc
mov dword [ebp - 0xa0], 0x94
lea eax, [ebp - 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
jne 0x2102db7c
jmp 0x2102ddd2
push 0x104
lea ecx, [ebp - 0x1ac]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea edx, [ebp - 0x1ac]
push edx
push 0x21075ae4
lea eax, [ebp - 0x1ac]
push eax
call fcn.21010b3d
push 0
push 0
push 0
lea ecx, [ebp - 4]
push ecx
lea edx, [ebp - 0xa8]
push edx
push 0
push 0
lea eax, [ebp - 0x1ac]
push eax
call fcn.21001046
mov ecx, dword [ebp - 0xa8]
and ecx, 0xffff
test ecx, ecx
jne 0x2102dbe4
mov edx, dword [ebp - 4]
and edx, 0xffff
test edx, edx
je 0x2102dc28
mov eax, dword [ebp - 0xa8]
and eax, 0xffff
cmp dword [ebp - 0x9c], eax
jne 0x2102dc08
mov ecx, dword [ebp - 4]
and ecx, 0xffff
cmp dword [ebp - 0x98], ecx
je 0x2102dc28
mov edx, dword [ebp - 0xa8]
and edx, 0xffff
mov dword [ebp - 0x9c], edx
mov eax, dword [ebp - 4]
and eax, 0xffff
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x1b0], ecx
cmp dword [ebp - 0x1b0], 1
je 0x2102dc4b
cmp dword [ebp - 0x1b0], 2
je 0x2102dcb5
jmp 0x2102dd83
mov edx, dword [ebp - 0x9c]
shl edx, 8
or edx, dword [ebp - 0x98]
mov dword [ebp - 0x1b4], edx
cmp dword [ebp - 0x1b4], 0x400
je 0x2102dc86
cmp dword [ebp - 0x1b4], 0x40a
je 0x2102dc91
cmp dword [ebp - 0x1b4], 0x45a
je 0x2102dc9c
jmp 0x2102dca7
mov eax, dword [ebp + 8]
mov dword [eax], 1
jmp 0x2102dcb0
mov edx, dword [ebp + 8]
mov dword [edx], 2
jmp 0x2102dcb0
mov ecx, dword [ebp + 8]
mov dword [ecx], 3
jmp 0x2102dcb0
mov edx, dword [ebp + 8]
mov dword [edx], 3
jmp 0x2102dd83
mov eax, dword [ebp - 0x9c]
shl eax, 8
or eax, dword [ebp - 0x98]
mov dword [ebp - 0x1b8], eax
cmp dword [ebp - 0x1b8], 0x502
ja 0x2102dcfc
cmp dword [ebp - 0x1b8], 0x502
je 0x2102dd20
cmp dword [ebp - 0x1b8], 0x500
je 0x2102dd0a
cmp dword [ebp - 0x1b8], 0x501
je 0x2102dd15
jmp 0x2102dd66
cmp dword [ebp - 0x1b8], 0x600
je 0x2102dd43
jmp 0x2102dd66
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 2
jmp 0x2102dd83
mov edx, dword [ebp + 0xc]
mov dword [edx], 3
jmp 0x2102dd83
mov eax, dword [ebp - 6]
and eax, 0xff
cmp eax, 1
jne 0x2102dd38
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 3
jmp 0x2102dd41
mov edx, dword [ebp + 0xc]
mov dword [edx], 4
jmp 0x2102dd83
mov eax, dword [ebp - 6]
and eax, 0xff
cmp eax, 1
jne 0x2102dd5b
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 5
jmp 0x2102dd64
mov edx, dword [ebp + 0xc]
mov dword [edx], 6
jmp 0x2102dd83
cmp dword [ebp - 0x90], 4
ja 0x2102dd7a
mov eax, dword [ebp + 0xc]
mov dword [eax], 1
jmp 0x2102dd83
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 7
cmp dword [ebp + 0x14], 0
je 0x2102dd96
mov edx, dword [ebp + 0x14]
mov ax, word [ebp - 0x9c]
mov word [edx], ax
cmp dword [ebp + 0x18], 0
je 0x2102dda9
mov ecx, dword [ebp + 0x18]
mov dx, word [ebp - 0x98]
mov word [ecx], dx
cmp dword [ebp + 0x1c], 0
je 0x2102ddc2
cmp dword [ebp - 0xa4], 0
je 0x2102ddc2
mov eax, dword [ebp + 0x1c]
mov cx, word [ebp - 0xc]
mov word [eax], cx
cmp dword [ebp + 0x10], 0
je 0x2102ddd2
call fcn.2102ec28
mov edx, dword [ebp + 0x10]
mov dword [edx], eax
mov esp, ebp
pop ebp
ret 0x18