Function at 0x2103dd2e
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x344
cmp dword [ebp + 8], 0
je 0x2103dd46
mov eax, dword [ebp + 8]
mov dword [eax], 0
cmp dword [ebp + 0xc], 0
je 0x2103dd55
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 0
cmp dword [ebp + 0x10], 0
je 0x2103dd64
mov edx, dword [ebp + 0x10]
mov dword [edx], 0
cmp dword [ebp + 0x14], 0
je 0x2103dd72
mov eax, dword [ebp + 0x14]
mov word [eax], 0
cmp dword [ebp + 0x18], 0
je 0x2103dd80
mov ecx, dword [ebp + 0x18]
mov word [ecx], 0
cmp dword [ebp + 0x1c], 0
je 0x2103dd8e
mov edx, dword [ebp + 0x1c]
mov word [edx], 0
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
and eax, 0x80000000
test eax, eax
je 0x2103ddf3
mov ecx, dword [ebp - 8]
and ecx, 0xffff
and ecx, 0xffff
mov dword [ebp - 0x338], ecx
cmp dword [ebp - 0x338], 4
je 0x2103ddcf
cmp dword [ebp - 0x338], 0xa04
je 0x2103ddda
jmp 0x2103dde5
mov edx, dword [ebp + 8]
mov dword [edx], 1
jmp 0x2103ddee
mov eax, dword [ebp + 8]
mov dword [eax], 2
jmp 0x2103ddee
mov ecx, dword [ebp + 8]
mov dword [ecx], 1
jmp 0x2103e106
push 0x11c
push 0
lea edx, [ebp - 0x124]
push edx
call fcn.2105e780
add esp, 0xc
mov dword [ebp - 0x124], 0x11c
lea eax, [ebp - 0x124]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 0
jne 0x2103de65
push 0x11c
push 0
lea ecx, [ebp - 0x124]
push ecx
call fcn.2105e780
add esp, 0xc
mov dword [ebp - 0x124], 0x94
lea edx, [ebp - 0x124]
push edx
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x2103de65
jmp 0x2103e106
push 0x104
lea eax, [ebp - 0x334]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push 0x104
lea ecx, [ebp - 0x334]
push ecx
push 0x21092e30
lea edx, [ebp - 0x334]
push edx
call fcn.210153c3
add esp, 0x10
push 0
push 0
push 0
push 0
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x12c]
push ecx
push 0
push 0
lea edx, [ebp - 0x334]
push edx
call fcn.2100104c
add esp, 0x24
mov eax, dword [ebp - 0x12c]
and eax, 0xffff
test eax, eax
jne 0x2103ded9
mov ecx, dword [ebp - 4]
and ecx, 0xffff
test ecx, ecx
je 0x2103df1e
mov edx, dword [ebp - 0x12c]
and edx, 0xffff
cmp dword [ebp - 0x120], edx
jne 0x2103defd
mov eax, dword [ebp - 4]
and eax, 0xffff
cmp dword [ebp - 0x11c], eax
je 0x2103df1e
mov ecx, dword [ebp - 0x12c]
and ecx, 0xffff
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 4]
and edx, 0xffff
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x33c], eax
cmp dword [ebp - 0x33c], 1
je 0x2103df41
cmp dword [ebp - 0x33c], 2
je 0x2103dfab
jmp 0x2103e0b7
mov ecx, dword [ebp - 0x120]
shl ecx, 8
or ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x340], ecx
cmp dword [ebp - 0x340], 0x400
je 0x2103df7c
cmp dword [ebp - 0x340], 0x40a
je 0x2103df87
cmp dword [ebp - 0x340], 0x45a
je 0x2103df92
jmp 0x2103df9d
mov edx, dword [ebp + 8]
mov dword [edx], 1
jmp 0x2103dfa6
mov ecx, dword [ebp + 8]
mov dword [ecx], 2
jmp 0x2103dfa6
mov eax, dword [ebp + 8]
mov dword [eax], 3
jmp 0x2103dfa6
mov ecx, dword [ebp + 8]
mov dword [ecx], 3
jmp 0x2103e0b7
mov edx, dword [ebp - 0x120]
shl edx, 8
or edx, dword [ebp - 0x11c]
mov dword [ebp - 0x344], edx
cmp dword [ebp - 0x344], 0x502
ja 0x2103dff5
cmp dword [ebp - 0x344], 0x502
je 0x2103e02e
cmp dword [ebp - 0x344], 0x500
je 0x2103e012
cmp dword [ebp - 0x344], 0x501
je 0x2103e020
jmp 0x2103e09a
cmp dword [ebp - 0x344], 0x600
je 0x2103e052
cmp dword [ebp - 0x344], 0x601
je 0x2103e076
jmp 0x2103e09a
mov eax, dword [ebp + 0xc]
mov dword [eax], 2
jmp 0x2103e0b7
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 3
jmp 0x2103e0b7
mov edx, dword [ebp - 0xa]
and edx, 0xff
cmp edx, 1
jne 0x2103e047
mov eax, dword [ebp + 0xc]
mov dword [eax], 3
jmp 0x2103e050
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 4
jmp 0x2103e0b7
mov edx, dword [ebp - 0xa]
and edx, 0xff
cmp edx, 1
jne 0x2103e06b
mov eax, dword [ebp + 0xc]
mov dword [eax], 5
jmp 0x2103e074
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 6
jmp 0x2103e0b7
mov edx, dword [ebp - 0xa]
and edx, 0xff
cmp edx, 1
jne 0x2103e08f
mov eax, dword [ebp + 0xc]
mov dword [eax], 7
jmp 0x2103e098
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 6
jmp 0x2103e0b7
cmp dword [ebp - 0x120], 4
ja 0x2103e0ae
mov edx, dword [ebp + 0xc]
mov dword [edx], 1
jmp 0x2103e0b7
mov eax, dword [ebp + 0xc]
mov dword [eax], 8
cmp dword [ebp + 0x14], 0
je 0x2103e0ca
mov ecx, dword [ebp + 0x14]
mov dx, word [ebp - 0x120]
mov word [ecx], dx
cmp dword [ebp + 0x18], 0
je 0x2103e0dd
mov eax, dword [ebp + 0x18]
mov cx, word [ebp - 0x11c]
mov word [eax], cx
cmp dword [ebp + 0x1c], 0
je 0x2103e0f6
cmp dword [ebp - 0x128], 0
je 0x2103e0f6
mov edx, dword [ebp + 0x1c]
mov ax, word [ebp - 0x10]
mov word [edx], ax
cmp dword [ebp + 0x10], 0
je 0x2103e106
call fcn.2103f170
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
mov esp, ebp
pop ebp
ret