Function at 0x41c630
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x120
mov eax, dword [0x42f610]
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 8], 1
push 0x104
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
lea ecx, [ebp - 0x118]
push ecx
call fcn.0041e990
add esp, 4
movsx edx, byte [ebp + eax - 0x119]
cmp edx, 0x5c
je 0x41c690
push 0x42b9d8
lea eax, [ebp - 0x118]
push eax
call fcn.0041e1c0
add esp, 8
push str.dvr2.ini
lea ecx, [ebp - 0x118]
push ecx
call fcn.0041e1c0
add esp, 8
lea edx, [ebp - 0x118]
push edx
push 0x104
mov eax, dword [ebp - 0x11c]
add eax, 0x20c
push eax
push 0x42b9e5
push 0x42b9e8
push 0x42b9f0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x11c]
movsx edx, byte [ecx + 0x20c]
test edx, edx
je 0x41c74e
mov eax, dword [ebp - 0x11c]
add eax, 0x20c
push eax
call fcn.0041e990
add esp, 4
mov ecx, dword [ebp - 0x11c]
movsx edx, byte [ecx + eax + 0x20b]
cmp edx, 0x5c
je 0x41c722
push 0x42b9f8
mov eax, dword [ebp - 0x11c]
add eax, 0x20c
push eax
call fcn.0041e1c0
add esp, 8
mov ecx, dword [ebp - 0x11c]
add ecx, 0x20c
push ecx
mov edx, dword [ebp - 0x11c]
add edx, 0x310
push edx
call fcn.0041e1b0
add esp, 8
mov eax, 1
jmp 0x41cf58
push 0x104
mov eax, dword [ebp - 0x11c]
add eax, 0x20c
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x5c
mov ecx, dword [ebp - 0x11c]
add ecx, 0x20c
push ecx
call fcn.0041e720
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x41c78e
mov edx, dword [ebp - 4]
mov byte [edx + 1], 0
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
movzx eax, ax
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x11c]
mov eax, dword [edx + 4]
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 0x1404
jg 0x41ca38
cmp dword [ebp - 0x120], 0x1404
je case.0x41c98a.3
cmp dword [ebp - 0x120], 0x804
jg 0x41c8f6
cmp dword [ebp - 0x120], 0x804
je 0x41cd68
cmp dword [ebp - 0x120], 0x40c
jg 0x41c8aa
cmp dword [ebp - 0x120], 0x40c
je case.0x41cab9.5
cmp dword [ebp - 0x120], 0x407
jg 0x41c87e
cmp dword [ebp - 0x120], 0x407
je case.0x41cab9.0
cmp dword [ebp - 0x120], 0x401
jg 0x41c869
cmp dword [ebp - 0x120], 0x401
je case.0x41c98a.0
cmp dword [ebp - 0x120], 4
je 0x41cd68
cmp dword [ebp - 0x120], 0x80
je case.0x41cab9.5
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x404
je case.0x41c98a.3
jmp case.0x41cab9.1
mov ecx, dword [ebp - 0x120]
sub ecx, 0x408
mov dword [ebp - 0x120], ecx
cmp dword [ebp - 0x120], 3
ja case.0x41cab9.1
mov edx, dword [ebp - 0x120]
jmp dword [edx*4 + 0x41cf64]
cmp dword [ebp - 0x120], 0x801
jg 0x41c8f1
cmp dword [ebp - 0x120], 0x801
je case.0x41c98a.0
mov eax, dword [ebp - 0x120]
sub eax, 0x40d
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 9
ja case.0x41cab9.1
mov ecx, dword [ebp - 0x120]
jmp dword [ecx*4 + 0x41cf74]
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0xc0a
jg 0x41c991
cmp dword [ebp - 0x120], 0xc0a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x816
jg 0x41c965
cmp dword [ebp - 0x120], 0x816
je case.0x41c8ea.9
mov edx, dword [ebp - 0x120]
sub edx, 0x807
mov dword [ebp - 0x120], edx
cmp dword [ebp - 0x120], 9
ja case.0x41cab9.1
mov eax, dword [ebp - 0x120]
movzx ecx, byte [eax + 0x41cfb0]
jmp dword [ecx*4 + 0x41cf9c]
mov edx, dword [ebp - 0x120]
sub edx, 0xc01
mov dword [ebp - 0x120], edx
cmp dword [ebp - 0x120], 8
ja case.0x41cab9.1
mov eax, dword [ebp - 0x120]
jmp dword [eax*4 + 0x41cfba]
cmp dword [ebp - 0x120], 0x1009
jg 0x41ca03
cmp dword [ebp - 0x120], 0x1009
je case.0x41cab9.2
cmp dword [ebp - 0x120], 0x1004
jg 0x41c9ee
cmp dword [ebp - 0x120], 0x1004
je 0x41cd68
cmp dword [ebp - 0x120], 0xc0c
je case.0x41cab9.5
cmp dword [ebp - 0x120], 0x1001
je case.0x41c98a.0
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x1007
je case.0x41cab9.0
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x100a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x100c
je case.0x41cab9.5
cmp dword [ebp - 0x120], 0x1401
je case.0x41c98a.0
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x280a
jg 0x41cbbd
cmp dword [ebp - 0x120], 0x280a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x1c0a
jg 0x41cb16
cmp dword [ebp - 0x120], 0x1c0a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x1801
jg 0x41cac0
cmp dword [ebp - 0x120], 0x1801
je case.0x41c98a.0
mov ecx, dword [ebp - 0x120]
sub ecx, 0x1407
mov dword [ebp - 0x120], ecx
cmp dword [ebp - 0x120], 5
ja case.0x41cab9.1
mov edx, dword [ebp - 0x120]
jmp dword [edx*4 + 0x41cfde]
cmp dword [ebp - 0x120], 0x1c01
jg 0x41cb01
cmp dword [ebp - 0x120], 0x1c01
je case.0x41c98a.0
cmp dword [ebp - 0x120], 0x1809
je case.0x41cab9.2
cmp dword [ebp - 0x120], 0x180a
je case.0x41cab9.3
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x1c09
je case.0x41cab9.2
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x2409
jg 0x41cb88
cmp dword [ebp - 0x120], 0x2409
je case.0x41cab9.2
cmp dword [ebp - 0x120], 0x200a
jg 0x41cb73
cmp dword [ebp - 0x120], 0x200a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x2001
je case.0x41c98a.0
cmp dword [ebp - 0x120], 0x2009
je case.0x41cab9.2
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x2401
je case.0x41c98a.0
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x240a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x2801
je case.0x41c98a.0
cmp dword [ebp - 0x120], 0x2809
je case.0x41cab9.2
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x3c01
jg 0x41cca5
cmp dword [ebp - 0x120], 0x3c01
je case.0x41c98a.0
cmp dword [ebp - 0x120], 0x300a
jg 0x41cc4f
cmp dword [ebp - 0x120], 0x300a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x2c0a
jg 0x41cc3a
cmp dword [ebp - 0x120], 0x2c0a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x2c01
je case.0x41c98a.0
cmp dword [ebp - 0x120], 0x2c09
je case.0x41cab9.2
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x3001
je case.0x41c98a.0
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x3801
jg 0x41cc90
cmp dword [ebp - 0x120], 0x3801
je case.0x41c98a.0
cmp dword [ebp - 0x120], 0x3401
je case.0x41c98a.0
cmp dword [ebp - 0x120], 0x340a
je case.0x41cab9.3
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x380a
je case.0x41cab9.3
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x480a
jg 0x41cd13
cmp dword [ebp - 0x120], 0x480a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x400a
jg 0x41ccfe
cmp dword [ebp - 0x120], 0x400a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x3c0a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x4001
je case.0x41c98a.0
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x440a
je case.0x41cab9.3
jmp case.0x41cab9.1
cmp dword [ebp - 0x120], 0x4c0a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x500a
je case.0x41cab9.3
cmp dword [ebp - 0x120], 0x7c04
je case.0x41c98a.3
jmp case.0x41cab9.1
mov eax, dword [ebp - 0x11c]
mov dword [eax + 8], 0xf
jmp 0x41ce62
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + 8], 4
jmp 0x41ce62
mov edx, dword [ebp - 0x11c]
mov dword [edx + 8], 3
jmp 0x41ce62
mov eax, dword [ebp - 0x11c]
mov dword [eax + 8], 0xc
jmp 0x41ce62
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + 8], 0xd
jmp 0x41ce62
mov edx, dword [ebp - 0x11c]
mov dword [edx + 8], 7
jmp 0x41ce62
mov eax, dword [ebp - 0x11c]
mov dword [eax + 8], 0xb
jmp 0x41ce62
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + 8], 0xe
jmp 0x41ce62
mov edx, dword [ebp - 0x11c]
mov dword [edx + 8], 6
jmp 0x41ce62
mov eax, dword [ebp - 0x11c]
mov dword [eax + 8], 0x10
jmp 0x41ce62
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + 8], 5
jmp 0x41ce62
mov edx, dword [ebp - 0x11c]
mov dword [edx + 8], 1
jmp 0x41ce62
mov eax, dword [ebp - 0x11c]
mov dword [eax + 8], 0x11
jmp 0x41ce62
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + 8], 9
jmp 0x41ce62
mov edx, dword [ebp - 0x11c]
mov dword [edx + 8], 0xa
jmp 0x41ce62
mov eax, dword [ebp - 0x11c]
mov dword [eax + 8], 8
jmp 0x41ce62
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + 8], 0
jmp 0x41ce62
mov dword [ebp - 8], 0
mov edx, dword [ebp - 0x11c]
mov eax, dword [edx + 4]
push eax
push 0x42b9fc
lea ecx, [ebp - 0x118]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0x42ba00
mov edx, dword [ebp - 0x11c]
add edx, 0x20c
push edx
call fcn.0041e1c0
add esp, 8
mov eax, dword [ebp - 0x11c]
add eax, 0x20c
push eax
mov ecx, dword [ebp - 0x11c]
add ecx, 0x310
push ecx
call fcn.0041e1b0
add esp, 8
cmp dword [ebp - 8], 0
je 0x41ceea
mov edx, dword [ebp - 0x11c]
mov eax, dword [edx + 8]
mov ecx, dword [eax*4 + 0x42f190]
push ecx
mov edx, dword [ebp - 0x11c]
add edx, 0x20c
push edx
call fcn.0041e1c0
add esp, 8
jmp 0x41cf06
lea eax, [ebp - 0x118]
push eax
mov ecx, dword [ebp - 0x11c]
add ecx, 0x20c
push ecx
call fcn.0041e1c0
add esp, 8
push 0x42ba08
mov edx, dword [ebp - 0x11c]
add edx, 0x310
push edx
call fcn.0041e1c0
add esp, 8
push 0x42ba0c
mov eax, dword [ebp - 0x11c]
add eax, 0x20c
push eax
call fcn.0041e1c0
add esp, 8
push 0x42ba10
mov ecx, dword [ebp - 0x11c]
add ecx, 0x310
push ecx
call fcn.0041e1c0
add esp, 8
mov eax, 1
mov ecx, dword [ebp - 0xc]
call fcn.0042175e
mov esp, ebp
pop ebp
ret