Function at 0x4122a0
Capabilities:
Contain obfuscated stackstrings
Create shortcut via ishelllink
Delete file
Get common file path
Get startup folder

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b74a1
mov eax, dword fs:[0]
push eax
mov eax, 0x10b4
call fcn.0049e0d0
mov eax, dword [0x57aa54]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xf84], ecx
mov eax, dword [ebp - 0xf84]
mov dword [eax + 0x24], 6
push str.MPR500_Pro_5AlbumMaker.exe
lea ecx, [ebp - 0xec0]
call fcn.004038f0
mov dword [ebp - 0xf88], eax
mov ecx, dword [ebp - 0xf88]
mov dword [ebp - 0xf8c], ecx
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0xf8c]
push edx
mov eax, dword [ebp - 0xf84]
add eax, 8
push eax
lea ecx, [ebp - 0x650]
push ecx
call fcn.004032e0
add esp, 0xc
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xec0]
call fcn.00403970
push str.MPR500_Pro_5App.ico
lea ecx, [ebp - 0xec4]
call fcn.004038f0
mov dword [ebp - 0xf90], eax
mov edx, dword [ebp - 0xf90]
mov dword [ebp - 0xf94], edx
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0xf94]
push eax
mov ecx, dword [ebp - 0xf84]
add ecx, 8
push ecx
lea edx, [ebp - 0x654]
push edx
call fcn.004032e0
add esp, 0xc
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xec4]
call fcn.00403970
lea ecx, [ebp - 0xea0]
call fcn.004038b0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.004038b0
mov byte [ebp - 4], 7
lea eax, [ebp - 0x868]
push eax
lea ecx, [ebp - 0xea0]
push ecx
lea edx, [ebp - 0x650]
push edx
call fcn.0040d760
add esp, 0xc
push 1
push 0x19
lea eax, [ebp - 0x64c]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
jne 0x41244e
push str.Failed_to_get_the_desktop_path
mov ecx, dword [ebp - 0xf84]
add ecx, 0x20
push ecx
call fcn.004044a0
add esp, 8
mov byte [ebp - 0xec5], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xec5]
jmp 0x413607
push 1
push 0x17
lea edx, [ebp - 0x864]
push edx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
jne 0x4124d2
push str.Failed_to_get_the_programs_path
mov eax, dword [ebp - 0xf84]
add eax, 0x20
push eax
call fcn.004044a0
add esp, 8
mov byte [ebp - 0xec6], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xec6]
jmp 0x413607
push 0
push 0x25
lea ecx, [ebp - 0x224]
push ecx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
jne 0x412556
push str.Failed_to_get_the_system_path
mov edx, dword [ebp - 0xf84]
add edx, 0x20
push edx
call fcn.004044a0
add esp, 8
mov byte [ebp - 0xec7], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xec7]
jmp 0x413607
push 0x4bff0c
lea ecx, [ebp - 0xecc]
call fcn.004038f0
mov dword [ebp - 0xf98], eax
mov eax, dword [ebp - 0xf98]
mov dword [ebp - 0xf9c], eax
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0xf9c]
push ecx
mov edx, dword [ebp - 0xf84]
add edx, 4
push edx
lea eax, [ebp - 0xed0]
push eax
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0xfa0], eax
mov ecx, dword [ebp - 0xfa0]
call fcn.0040ca60
push eax
lea ecx, [ebp - 0x64c]
push ecx
lea edx, [ebp - 0xa7c]
push edx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0xec8], al
lea ecx, [ebp - 0xed0]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xecc]
call fcn.00403970
movzx eax, byte [ebp - 0xec8]
test eax, eax
je 0x4126ea
push 0x4bff18
lea ecx, [ebp - 0xed4]
call fcn.004038f0
mov dword [ebp - 0xfa4], eax
mov ecx, dword [ebp - 0xfa4]
mov dword [ebp - 0xfa8], ecx
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0xfa8]
push edx
mov eax, dword [ebp - 0xf84]
add eax, 4
push eax
lea ecx, [ebp - 0xed8]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0xfac], eax
mov edx, dword [ebp - 0xfac]
mov dword [ebp - 0xfb0], edx
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0xfb0]
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x64c]
push edx
push 0x4bff28
mov eax, dword [ebp - 0xf84]
add eax, 0x20
push eax
call fcn.004044a0
add esp, 0x10
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xed8]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xed4]
call fcn.00403970
mov byte [ebp - 0xed9], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xed9]
jmp 0x413607
mov ecx, dword [ebp - 0xf84]
call fcn.0040ca60
push eax
lea ecx, [ebp - 0x864]
push ecx
lea edx, [ebp - 0xc8c]
push edx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
test eax, eax
jne 0x412786
mov eax, dword [ebp - 0xf84]
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x864]
push edx
push 0x4bff78
mov eax, dword [ebp - 0xf84]
add eax, 0x20
push eax
call fcn.004044a0
add esp, 0x10
mov byte [ebp - 0xeda], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xeda]
jmp 0x413607
push 0x4bff6c
lea ecx, [ebp - 0xee0]
call fcn.004038f0
mov dword [ebp - 0xfb4], eax
mov ecx, dword [ebp - 0xfb4]
mov dword [ebp - 0xfb8], ecx
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0xfb8]
push edx
mov eax, dword [ebp - 0xf84]
add eax, 4
push eax
lea ecx, [ebp - 0xee4]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0xfbc], eax
mov ecx, dword [ebp - 0xfbc]
call fcn.0040ca60
push eax
lea edx, [ebp - 0xc8c]
push edx
lea eax, [ebp - 0xe9c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0xedb], al
lea ecx, [ebp - 0xee4]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xee0]
call fcn.00403970
movzx ecx, byte [ebp - 0xedb]
test ecx, ecx
je 0x41291a
push 0x4bffbc
lea ecx, [ebp - 0xee8]
call fcn.004038f0
mov dword [ebp - 0xfc0], eax
mov edx, dword [ebp - 0xfc0]
mov dword [ebp - 0xfc4], edx
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0xfc4]
push eax
mov ecx, dword [ebp - 0xf84]
add ecx, 4
push ecx
lea edx, [ebp - 0xeec]
push edx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0xfc8], eax
mov eax, dword [ebp - 0xfc8]
mov dword [ebp - 0xfcc], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0xfcc]
mov edx, dword [ecx]
push edx
lea eax, [ebp - 0xc8c]
push eax
push 0x4bffc8
mov ecx, dword [ebp - 0xf84]
add ecx, 0x20
push ecx
call fcn.004044a0
add esp, 0x10
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0xeec]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xee8]
call fcn.00403970
mov byte [ebp - 0xeed], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xeed]
jmp 0x413607
push 0x4c000c
lea ecx, [ebp - 0xef4]
call fcn.004038f0
mov dword [ebp - 0xfd0], eax
mov edx, dword [ebp - 0xfd0]
mov dword [ebp - 0xfd4], edx
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0xfd4]
push eax
mov ecx, dword [ebp - 0xf84]
add ecx, 4
push ecx
push 0x4c0018
lea ecx, [ebp - 0xef8]
call fcn.004038f0
mov dword [ebp - 0xfd8], eax
mov edx, dword [ebp - 0xfd8]
mov dword [ebp - 0xfdc], edx
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0xfdc]
push eax
lea ecx, [ebp - 0xefc]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0xfe0], eax
mov edx, dword [ebp - 0xfe0]
mov dword [ebp - 0xfe4], edx
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0xfe4]
push eax
lea ecx, [ebp - 0xf00]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0xfe8], eax
mov ecx, dword [ebp - 0xfe8]
call fcn.0040ca60
push eax
lea edx, [ebp - 0xc8c]
push edx
lea eax, [ebp - 0x43c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0xeee], al
lea ecx, [ebp - 0xf00]
call fcn.00403970
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xefc]
call fcn.00403970
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0xef8]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xef4]
call fcn.00403970
movzx ecx, byte [ebp - 0xeee]
test ecx, ecx
je 0x412b9c
push str..lnk
lea ecx, [ebp - 0xf04]
call fcn.004038f0
mov dword [ebp - 0xfec], eax
mov edx, dword [ebp - 0xfec]
mov dword [ebp - 0xff0], edx
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0xff0]
push eax
mov ecx, dword [ebp - 0xf84]
add ecx, 4
push ecx
push str.Uninstall
lea ecx, [ebp - 0xf08]
call fcn.004038f0
mov dword [ebp - 0xff4], eax
mov edx, dword [ebp - 0xff4]
mov dword [ebp - 0xff8], edx
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0xff8]
push eax
lea ecx, [ebp - 0xf0c]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0xffc], eax
mov edx, dword [ebp - 0xffc]
mov dword [ebp - 0x1000], edx
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x1000]
push eax
lea ecx, [ebp - 0xf10]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x1004], eax
mov edx, dword [ebp - 0x1004]
mov dword [ebp - 0x1008], edx
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x1008]
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0xc8c]
push edx
push str.Failed_to_combine_the_path:__s__s
mov eax, dword [ebp - 0xf84]
add eax, 0x20
push eax
call fcn.004044a0
add esp, 0x10
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xf10]
call fcn.00403970
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xf0c]
call fcn.00403970
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xf08]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xf04]
call fcn.00403970
mov byte [ebp - 0xf11], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xf11]
jmp 0x413607
mov byte [ebp - 0x225], 1
movzx ecx, byte [ebp + 8]
test ecx, ecx
je 0x4134f1
lea edx, [ebp - 0xc8c]
push edx
lea ecx, [ebp - 0xf18]
call fcn.004038f0
mov dword [ebp - 0x100c], eax
mov eax, dword [ebp - 0x100c]
mov dword [ebp - 0x1010], eax
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x1010]
push ecx
call fcn.0040d940
add esp, 4
movzx edx, al
neg edx
sbb edx, edx
add edx, 1
mov byte [ebp - 0xf12], dl
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xf18]
call fcn.00403970
movzx eax, byte [ebp - 0xf12]
test eax, eax
je 0x412c7f
lea ecx, [ebp - 0xc8c]
push ecx
push str.Failed_to_create_the_path:__s
mov edx, dword [ebp - 0xf84]
add edx, 0x20
push edx
call fcn.004044a0
add esp, 0xc
mov byte [ebp - 0xf19], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xf19]
jmp 0x413607
mov dword [ebp - 0xea8], 0
lea eax, [ebp - 0xea8]
push eax
push 0x560464
push 1
push 0
push 0x5604d4
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jge 0x412d10
push str.Failed_to_create_the_shell_interface
mov ecx, dword [ebp - 0xf84]
add ecx, 0x20
push ecx
call fcn.004044a0
add esp, 8
mov byte [ebp - 0xf1a], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xf1a]
jmp 0x413607
mov dword [ebp - 0xea4], 0
lea edx, [ebp - 0xea4]
push edx
push 0x560494
mov eax, dword [ebp - 0xea8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xea8]
push edx
mov eax, dword [ecx]
call eax
test eax, eax
jge 0x412db9
push str.Failed_to_QueryInterface_the_shell_interface
mov ecx, dword [ebp - 0xf84]
add ecx, 0x20
push ecx
call fcn.004044a0
add esp, 8
mov edx, dword [ebp - 0xea8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xea8]
push ecx
mov edx, dword [eax + 8]
call edx
mov byte [ebp - 0xf1b], 0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xf1b]
jmp 0x413607
lea ecx, [ebp - 0x650]
call fcn.0040ca60
push eax
mov eax, dword [ebp - 0xea8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xea8]
push edx
mov eax, dword [ecx + 0x50]
call eax
lea ecx, [ebp - 0x868]
call fcn.0040ca60
push eax
mov ecx, dword [ebp - 0xea8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xea8]
push eax
mov ecx, dword [edx + 0x24]
call ecx
push 0
lea ecx, [ebp - 0x654]
call fcn.0040ca60
push eax
mov edx, dword [ebp - 0xea8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xea8]
push ecx
mov edx, dword [eax + 0x44]
call edx
push 1
lea eax, [ebp - 0xa7c]
push eax
mov ecx, dword [ebp - 0xea4]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xea4]
push eax
mov ecx, dword [edx + 0x18]
call ecx
test eax, eax
jge 0x412e61
lea edx, [ebp - 0xa7c]
push edx
push 0x4c0184
mov eax, dword [ebp - 0xf84]
add eax, 0x20
push eax
call fcn.004044a0
add esp, 0xc
mov byte [ebp - 0x225], 0
lea ecx, [ebp - 0x650]
call fcn.0040ca60
push eax
mov ecx, dword [ebp - 0xea8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xea8]
push eax
mov ecx, dword [edx + 0x50]
call ecx
lea ecx, [ebp - 0x868]
call fcn.0040ca60
push eax
mov edx, dword [ebp - 0xea8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xea8]
push ecx
mov edx, dword [eax + 0x24]
call edx
push 0
lea ecx, [ebp - 0x654]
call fcn.0040ca60
push eax
mov eax, dword [ebp - 0xea8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xea8]
push edx
mov eax, dword [ecx + 0x44]
call eax
push 1
lea ecx, [ebp - 0xe9c]
push ecx
mov edx, dword [ebp - 0xea4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xea4]
push ecx
mov edx, dword [eax + 0x18]
call edx
test eax, eax
jge 0x412f09
lea eax, [ebp - 0xe9c]
push eax
push str.Failed_to_save_the_link:__s
mov ecx, dword [ebp - 0xf84]
add ecx, 0x20
push ecx
call fcn.004044a0
add esp, 0xc
mov byte [ebp - 0x225], 0
push 0x4c01f4
lea ecx, [ebp - 0xf20]
call fcn.004038f0
mov dword [ebp - 0x1014], eax
mov edx, dword [ebp - 0x1014]
mov dword [ebp - 0x1018], edx
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x1018]
push eax
push 0x4c01f8
lea ecx, [ebp - 0xf24]
call fcn.004038f0
mov dword [ebp - 0x101c], eax
mov ecx, dword [ebp - 0x101c]
mov dword [ebp - 0x1020], ecx
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x1020]
push edx
lea eax, [ebp - 0xf28]
push eax
mov ecx, dword [ebp - 0xf84]
call fcn.00413630
mov dword [ebp - 0x1024], eax
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0x1028], ecx
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x1028]
push edx
push 0x4c0204
lea ecx, [ebp - 0xf2c]
call fcn.004038f0
mov dword [ebp - 0x102c], eax
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0x1030], eax
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x1030]
push ecx
lea edx, [ebp - 0x224]
push edx
lea ecx, [ebp - 0xf30]
call fcn.004038f0
mov dword [ebp - 0x1034], eax
mov eax, dword [ebp - 0x1034]
mov dword [ebp - 0x1038], eax
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x1038]
push ecx
push 0x4c0208
lea ecx, [ebp - 0xf34]
call fcn.004038f0
mov dword [ebp - 0x103c], eax
mov edx, dword [ebp - 0x103c]
mov dword [ebp - 0x1040], edx
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x1040]
push eax
lea ecx, [ebp - 0xf38]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x1044], eax
mov edx, dword [ebp - 0x1044]
mov dword [ebp - 0x1048], edx
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x1048]
push eax
lea ecx, [ebp - 0xf3c]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x104c], eax
mov edx, dword [ebp - 0x104c]
mov dword [ebp - 0x1050], edx
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0x1050]
push eax
lea ecx, [ebp - 0xf40]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x1054], eax
mov edx, dword [ebp - 0x1054]
mov dword [ebp - 0x1058], edx
mov byte [ebp - 4], 0x1e
mov eax, dword [ebp - 0x1058]
push eax
lea ecx, [ebp - 0xf44]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x105c], eax
mov edx, dword [ebp - 0x105c]
mov dword [ebp - 0x1060], edx
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x1060]
push eax
lea ecx, [ebp - 0xf48]
push ecx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x1064], eax
mov edx, dword [ebp - 0x1064]
mov dword [ebp - 0x1068], edx
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x1068]
call fcn.0040ca60
push eax
mov eax, dword [ebp - 0xea8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xea8]
push edx
mov eax, dword [ecx + 0x50]
call eax
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0xf48]
call fcn.00403970
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf44]
call fcn.00403970
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0xf40]
call fcn.00403970
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0xf3c]
call fcn.00403970
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0xf38]
call fcn.00403970
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xf34]
call fcn.00403970
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xf30]
call fcn.00403970
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0xf2c]
call fcn.00403970
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0xf28]
call fcn.00403970
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xf24]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xf20]
call fcn.00403970
lea ecx, [ebp - 0x224]
push ecx
mov edx, dword [ebp - 0xea8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xea8]
push ecx
mov edx, dword [eax + 0x24]
call edx
push 0
push 0x4c020c
lea ecx, [ebp - 0xf4c]
call fcn.004038f0
mov dword [ebp - 0x106c], eax
mov eax, dword [ebp - 0x106c]
mov dword [ebp - 0x1070], eax
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x1070]
push ecx
push 0x4c0210
lea ecx, [ebp - 0xf50]
call fcn.004038f0
mov dword [ebp - 0x1074], eax
mov edx, dword [ebp - 0x1074]
mov dword [ebp - 0x1078], edx
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0x1078]
push eax
lea ecx, [ebp - 0xf54]
push ecx
mov ecx, dword [ebp - 0xf84]
call fcn.00413630
mov dword [ebp - 0x107c], eax
mov edx, dword [ebp - 0x107c]
mov dword [ebp - 0x1080], edx
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0x1080]
push eax
push 0x4c021c
lea ecx, [ebp - 0xf58]
call fcn.004038f0
mov dword [ebp - 0x1084], eax
mov ecx, dword [ebp - 0x1084]
mov dword [ebp - 0x1088], ecx
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x1088]
push edx
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0xf5c]
call fcn.004038f0
mov dword [ebp - 0x108c], eax
mov ecx, dword [ebp - 0x108c]
mov dword [ebp - 0x1090], ecx
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x1090]
push edx
push 0x4c0220
lea ecx, [ebp - 0xf60]
call fcn.004038f0
mov dword [ebp - 0x1094], eax
mov eax, dword [ebp - 0x1094]
mov dword [ebp - 0x1098], eax
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x1098]
push ecx
lea edx, [ebp - 0xf64]
push edx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x109c], eax
mov eax, dword [ebp - 0x109c]
mov dword [ebp - 0x10a0], eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x10a0]
push ecx
lea edx, [ebp - 0xf68]
push edx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x10a4], eax
mov eax, dword [ebp - 0x10a4]
mov dword [ebp - 0x10a8], eax
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x10a8]
push ecx
lea edx, [ebp - 0xf6c]
push edx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x10ac], eax
mov eax, dword [ebp - 0x10ac]
mov dword [ebp - 0x10b0], eax
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x10b0]
push ecx
lea edx, [ebp - 0xf70]
push edx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x10b4], eax
mov eax, dword [ebp - 0x10b4]
mov dword [ebp - 0x10b8], eax
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x10b8]
push ecx
lea edx, [ebp - 0xf74]
push edx
call fcn.004032e0
add esp, 0xc
mov dword [ebp - 0x10bc], eax
mov eax, dword [ebp - 0x10bc]
mov dword [ebp - 0x10c0], eax
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x10c0]
call fcn.0040ca60
push eax
mov ecx, dword [ebp - 0xea8]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xea8]
push eax
mov ecx, dword [edx + 0x44]
call ecx
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0xf74]
call fcn.00403970
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0xf70]
call fcn.00403970
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0xf6c]
call fcn.00403970
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0xf68]
call fcn.00403970
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0xf64]
call fcn.00403970
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0xf60]
call fcn.00403970
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0xf5c]
call fcn.00403970
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0xf58]
call fcn.00403970
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0xf54]
call fcn.00403970
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xf50]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xf4c]
call fcn.00403970
push 1
lea edx, [ebp - 0x43c]
push edx
mov eax, dword [ebp - 0xea4]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xea4]
push edx
mov eax, dword [ecx + 0x18]
call eax
test eax, eax
jge 0x4134c4
lea ecx, [ebp - 0x43c]
push ecx
push 0x4c0224
mov edx, dword [ebp - 0xf84]
add edx, 0x20
push edx
call fcn.004044a0
add esp, 0xc
mov byte [ebp - 0x225], 0
mov eax, dword [ebp - 0xea8]
mov ecx, dword [eax]
mov edx, dword [ebp - 0xea8]
push edx
mov eax, dword [ecx + 8]
call eax
mov ecx, dword [ebp - 0xea4]
mov edx, dword [ecx]
mov eax, dword [ebp - 0xea4]
push eax
mov ecx, dword [edx + 8]
call ecx
jmp 0x4135b6
lea edx, [ebp - 0xa7c]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [ebp - 0xe9c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x43c]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0xebc]
call fcn.00483870
mov byte [ebp - 4], 0x2c
lea edx, [ebp - 0xc8c]
push edx
lea ecx, [ebp - 0xf78]
call fcn.004038f0
mov byte [ebp - 4], 0x2d
lea eax, [ebp - 0xebc]
push eax
lea ecx, [ebp - 0xf78]
push ecx
call fcn.0040e0c0
add esp, 8
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0xf78]
call fcn.00403970
lea ecx, [ebp - 0xebc]
call fcn.004175c0
test eax, eax
je 0x4135a7
lea edx, [ebp - 0xc8c]
push edx
lea ecx, [ebp - 0xf7c]
call fcn.004038f0
mov byte [ebp - 4], 0x2e
push 1
lea eax, [ebp - 0xf7c]
push eax
call fcn.0040dc80
add esp, 8
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0xf7c]
call fcn.00403970
mov byte [ebp - 4], 7
lea ecx, [ebp - 0xebc]
call fcn.00483a4d
mov cl, byte [ebp - 0x225]
mov byte [ebp - 0xf7d], cl
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x868]
call fcn.00403970
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xea0]
call fcn.00403970
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x654]
call fcn.00403970
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x650]
call fcn.00403970
mov al, byte [ebp - 0xf7d]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049c63c
mov esp, ebp
pop ebp
ret 4