Function at 0x41ce18
Capabilities:
Copy file
Persist via run registry key
Set file attributes
Set registry value

Disassembly:
mov eax, 0x484165
call fcn.0046746c
mov eax, 0x12a0
call fcn.00467c10
push ebx
push esi
push edi
mov dword [ebp - 0x20], ecx
call fcn.00401166
mov esi, eax
xor ebx, ebx
mov ecx, 0xff
xor eax, eax
lea edi, [ebp - 0x6ab]
mov byte [ebp - 0x6ac], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, esi
mov dword [ebp - 0x38], esi
stosb byte es:[edi], al
call fcn.0042d34f
test eax, eax
jne 0x41cfbd
lea ecx, [ebp - 0xf4]
call fcn.004020ad
mov ecx, 0x4ab520
mov dword [ebp - 4], ebx
call fcn.00401a14
push eax
lea eax, [ebp - 0x6ac]
push 0x4abd78
push eax
call fcn.00435afb
mov esi, dword [sym.imp.KERNEL32.dll_CopyFileA]
lea eax, [ebp - 0x6ac]
push ebx
push eax
push 0x4ab548
call esi
lea eax, [ebp - 0x6ac]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x6ac]
lea ecx, [ebp - 0xf4]
push eax
call fcn.00402533
xor eax, eax
lea edi, [ebp - 0x107]
mov byte [ebp - 0x108], bl
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0x164]
movzx eax, word [eax + 0x48]
push eax
lea eax, [ebp - 0x108]
push str._04x
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebp - 0xeac]
push eax
lea eax, [ebp - 0x12ac]
push eax
push 0x4ab548
call fcn.004358b5
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x12ac]
push eax
lea eax, [ebp - 0xeac]
push eax
call fcn.00435afb
lea eax, [ebp - 0xeac]
push str..ini
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov ecx, 0xff
xor eax, eax
lea edi, [ebp - 0xaab]
mov byte [ebp - 0xaac], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0xaac]
push 0x4abd78
push eax
call fcn.00435afb
lea eax, [ebp - 0xaac]
push str..ini
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0xaac]
push ebx
push eax
lea eax, [ebp - 0xeac]
push eax
call esi
lea eax, [ebp - 0xaac]
lea ecx, [ebp - 0xf4]
push eax
call fcn.00402533
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf4]
call fcn.004020da
mov esi, dword [ebp - 0x38]
jmp 0x41cfcf
lea eax, [ebp - 0x6ac]
push 0x4ab548
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 1
lea eax, [ebp - 0x19]
pop edi
lea ecx, [ebp - 0x144]
push edi
push eax
push dword [0x48b820]
call fcn.00401884
lea eax, [ebp - 0x1a]
push edi
push eax
lea ecx, [ebp - 0x16c]
push dword [0x48b7ec]
mov dword [ebp - 4], edi
call fcn.00401884
push 0xa
lea eax, [ebp - 0x144]
push ebx
push eax
lea eax, [ebp - 0x16c]
mov ecx, esi
push eax
mov byte [ebp - 4], 2
call fcn.0042e8d0
lea ecx, [ebp - 0x16c]
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 1
call fcn.00401093
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x144]
call fcn.00401093
lea eax, [ebp - 0x1a]
push ebx
push eax
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0xc0], 0x48b6a8
mov dword [ebp - 0xa0], 0x48b6a0
call fcn.00403cd9
push 3
mov dword [ebp - 0x18], ebx
pop edi
mov dword [ebp - 4], edi
lea eax, [ebp - 0x1a]
push ebx
push eax
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 4
mov dword [ebp - 0x194], 0x48b6a8
mov dword [ebp - 0x174], 0x48b6a0
call fcn.00403cd9
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 5
sub eax, ebx
je 0x41d11d
dec eax
je 0x41d0e0
dec eax
jne 0x41d158
lea eax, [ebp - 0x19]
push 1
push eax
push str.SoftwareMicrosoftWindowsCurrentVersionRun
lea ecx, [ebp - 0x16c]
call fcn.00402e7f
lea eax, [ebp - 0x16c]
lea ecx, [ebp - 0x194]
push eax
mov byte [ebp - 4], 8
call fcn.004024b2
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x16c]
jmp 0x41d116
lea eax, [ebp - 0x26]
push 1
push eax
push str.SoftwareMicrosoftWindowsCurrentVersionRunOnceEx
lea ecx, [ebp - 0x144]
call fcn.00402e7f
lea eax, [ebp - 0x144]
lea ecx, [ebp - 0x194]
push eax
mov byte [ebp - 4], 7
call fcn.004024b2
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.00402438
jmp 0x41d161
lea eax, [ebp - 0x25]
push 1
push eax
push str.SoftwareMicrosoftWindowsCurrentVersionRunOnce
lea ecx, [ebp - 0x1bc]
call fcn.00402e7f
lea eax, [ebp - 0x1bc]
lea ecx, [ebp - 0x194]
push eax
mov byte [ebp - 4], 6
call fcn.004024b2
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 5
call fcn.00402438
cmp dword [ebp - 0x30], edi
je 0x41d8e3
lea ecx, [ebp - 0x194]
call fcn.004042dd
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], ebx
push ecx
push 0xf003f
push ebx
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
cmp eax, ebx
jne 0x41d8e3
lea ecx, [ebp - 0x18]
call fcn.00411574
mov ecx, dword [ebp - 0x14]
cmp eax, ebx
mov dword [ebp - 0x18], ecx
jne 0x41d8e3
lea eax, [ebp - 0x25]
push 1
push eax
lea ecx, [ebp - 0x284]
push dword [ebp + 8]
call fcn.00402e7f
cmp dword [ebp + 0xc], ebx
mov byte [ebp - 4], 9
je 0x41d1d9
mov edi, str._AFTERREBOOT1
push edi
call fcn.00467494
pop ecx
push eax
push edi
lea ecx, [ebp - 0x280]
call fcn.004102b7
lea eax, [ebp + 0xf]
mov edi, 0x48b6a8
push ebx
push eax
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x44], 0x48b6a0
call fcn.00403cd9
mov eax, dword [esi + 0x14]
mov byte [ebp - 4], 0xa
dec eax
je 0x41d2ce
dec eax
je 0x41d27d
dec eax
je 0x41d227
dec eax
je 0x41d21d
dec eax
jne 0x41d2e7
mov eax, 0x4a24a8
jmp 0x41d2d3
mov eax, 0x4a24a0
jmp 0x41d2d3
lea eax, [ebp - 0x2ac]
push 8
push eax
mov ecx, esi
call fcn.0040a446
push eax
lea eax, [ebp - 0xe8]
push 0x4a2498
push eax
mov byte [ebp - 4], 0xd
call fcn.0040c51d
add esp, 0xc
push eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xe
call fcn.004024b2
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0xd
call fcn.00402438
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x2ac]
call fcn.00402438
jmp 0x41d2e7
lea eax, [ebp - 0x8c]
push 8
push eax
mov ecx, esi
call fcn.0040a446
push eax
lea eax, [ebp - 0x1e4]
push 0x4a2490
push eax
mov byte [ebp - 4], 0xb
call fcn.0040c51d
add esp, 0xc
push eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xc
call fcn.004024b2
lea ecx, [ebp - 0x1e4]
mov byte [ebp - 4], 0xb
call fcn.00402438
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x8c]
jmp 0x41d276
mov eax, 0x4a2488
mov ecx, eax
test ecx, ecx
jne 0x41d2de
mov eax, 0x4aa140
push eax
lea ecx, [ebp - 0x64]
call fcn.00403eb2
mov ecx, esi
call fcn.0042d34f
test eax, eax
mov eax, 0x4a2480
jne 0x41d2fc
mov eax, 0x4aa140
cmp eax, ebx
mov dword [ebp - 0x234], edi
mov dword [ebp - 0x214], 0x48b6a0
jne 0x41d315
mov eax, 0x4aa140
lea ecx, [ebp - 0x26]
push ebx
push ecx
push eax
lea ecx, [ebp - 0x234]
call fcn.00404d89
lea eax, [ebp - 0x16c]
mov ecx, esi
push eax
mov byte [ebp - 4], 0xf
call fcn.0042a757
lea eax, [ebp - 0x19]
push 1
push eax
mov ecx, esi
mov byte [ebp - 4], 0x10
call fcn.0042a934
push eax
lea ecx, [ebp - 0x144]
call fcn.00402e7f
lea eax, [ebp - 0x31]
push 1
push eax
push 0x4abd78
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x11
call fcn.00402e7f
mov ecx, esi
mov byte [ebp - 4], 0x12
call fcn.0042d34f
test eax, eax
je 0x41d3fa
mov eax, dword [ebp - 0x20]
cmp dword [eax + 0x38], ebx
jne 0x41d3fa
mov edx, dword [ebp - 0x22c]
mov edi, 0x48b6d0
cmp edx, ebx
jne 0x41d397
mov edx, edi
mov eax, dword [ebp - 0x27c]
mov dword [ebp + 8], edi
cmp eax, ebx
je 0x41d3a7
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x2c], edi
cmp eax, ebx
je 0x41d3b7
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x20], edi
cmp eax, ebx
je 0x41d3c7
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x5c]
cmp ecx, ebx
jne 0x41d3d0
mov ecx, edi
mov eax, dword [ebp - 0x164]
cmp eax, ebx
jne 0x41d3dc
mov eax, edi
push edx
mov edx, dword [esi + 0x164]
push dword [ebp + 8]
movzx edx, word [edx + 0x48]
push dword [ebp - 0x2c]
push dword [ebp - 0x20]
push edx
push ecx
push eax
push str.__s___k__s__l_d__t__s___e__s___w__v__s___s
jmp 0x41d46c
mov edx, dword [ebp - 0x22c]
mov edi, 0x48b6d0
cmp edx, ebx
jne 0x41d40b
mov edx, edi
mov eax, dword [ebp - 0x27c]
mov dword [ebp + 8], edi
cmp eax, ebx
je 0x41d41b
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x20], edi
cmp eax, ebx
je 0x41d42b
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x2c], edi
cmp eax, ebx
je 0x41d43b
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x5c]
cmp ecx, ebx
jne 0x41d444
mov ecx, edi
mov eax, dword [ebp - 0x164]
cmp eax, ebx
jne 0x41d450
mov eax, edi
push edx
mov edx, dword [esi + 0x164]
push dword [ebp + 8]
movzx edx, word [edx + 0x48]
push dword [ebp - 0x20]
push dword [ebp - 0x2c]
push edx
push ecx
push eax
push str.__s___s__l_d__t__s___e__s___v__s___s
lea eax, [ebp - 0xc0]
push eax
call fcn.0040fce8
add esp, 0x24
lea eax, [ebp - 0x8c]
mov ecx, esi
push eax
call fcn.0041da8d
cmp dword [eax + 0xc], ebx
lea ecx, [ebp - 0x8c]
setne byte [ebp + 0xb]
call fcn.00402438
cmp byte [ebp + 0xb], bl
je 0x41d530
lea eax, [ebp - 0x2ac]
mov ecx, esi
push eax
call fcn.0041da8d
push eax
lea eax, [ebp - 0x1e4]
push str.__debuglog_
push eax
mov byte [ebp - 4], 0x13
call fcn.0040c51d
push 0x4a1328
push eax
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0x14
push eax
call fcn.00410190
add esp, 0x18
push dword [0x48b6b0]
mov ecx, eax
add eax, 4
mov byte [ebp - 4], 0x15
neg ecx
sbb ecx, ecx
push ebx
and ecx, eax
push ecx
lea ecx, [ebp - 0xbc]
call fcn.0040b07a
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x14
call fcn.00402438
lea ecx, [ebp - 0x1e4]
mov byte [ebp - 4], 0x13
call fcn.00402438
lea ecx, [ebp - 0x2ac]
mov byte [ebp - 4], 0x12
call fcn.00402438
cmp dword [ebp - 0x30], 1
jne 0x41d56c
lea eax, [ebp - 0x20]
mov dword [ebp + 8], ebx
push eax
lea eax, [ebp + 8]
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
push str.0001
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
cmp eax, ebx
jne 0x41d56c
lea ecx, [ebp - 0x18]
call fcn.00411574
mov eax, dword [ebp + 8]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x284]
push ebx
push eax
lea ecx, [ebp - 0x11c]
mov dword [ebp - 0x11c], 0x48b6a8
mov dword [ebp - 0xfc], 0x48b6a0
call fcn.00403d4e
lea eax, [ebp + 0xb]
push 1
push eax
mov ecx, esi
mov byte [ebp - 4], 0x16
call fcn.0042a934
push eax
lea ecx, [ebp - 0x25c]
call fcn.00402e7f
lea eax, [ebp - 0x39]
push 1
push eax
push 0x4abd78
lea ecx, [ebp - 0x20c]
mov byte [ebp - 4], 0x17
call fcn.00402e7f
cmp dword [ebp - 0x250], ebx
mov byte [ebp - 4], 0x18
je 0x41d5f4
lea eax, [ebp - 0x8c]
push ebx
push eax
lea ecx, [ebp - 0x25c]
call fcn.00416012
lea ecx, [ebp - 0x8c]
call fcn.00402438
cmp dword [ebp - 0x200], ebx
je 0x41d61a
lea eax, [ebp - 0x8c]
push ebx
push eax
lea ecx, [ebp - 0x20c]
call fcn.00416012
lea ecx, [ebp - 0x8c]
call fcn.00402438
cmp dword [ebp - 0xb8], ebx
je 0x41d628
mov edi, dword [ebp - 0xb8]
lea eax, [ebp - 0xd]
push 1
push eax
push str.C:Codebasesisdev_srcRuntimeMSISharedSetupmsiaction.cpp
lea ecx, [ebp - 0x8c]
call fcn.00401884
mov eax, dword [eax + 8]
mov byte [ebp - 4], 0x19
cmp eax, ebx
jne 0x41d64e
mov eax, 0x48b67c
mov dword [ebp - 0x24], eax
push edi
lea eax, [ebp - 0x24]
push str.MsiAction::Reboot_command_line__s
push eax
mov dword [ebp - 0x20], 0x70d
call fcn.0040a552
add esp, 0xc
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x18
call fcn.00401093
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x1a
push eax
push 0xf003f
push ebx
push str.SoftwareMicrosoftWindowsCurrentVersion
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x20], ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, ebx
jne 0x41d817
lea ecx, [ebp - 0x14]
call fcn.00411574
mov ecx, dword [ebp - 0x20]
cmp eax, ebx
mov dword [ebp - 0x14], ecx
jne 0x41d817
lea ecx, [ebp - 0x25c]
call fcn.004042dd
push eax
mov dword [ebp - 0x20], eax
call esi
inc eax
push eax
push dword [ebp - 0x20]
push 1
push ebx
push str._IS_T_
push dword [ebp - 0x14]
call edi
lea ecx, [ebp - 0x20c]
call fcn.004042dd
push eax
mov dword [ebp - 0x20], eax
call esi
inc eax
push eax
push dword [ebp - 0x20]
push 1
push ebx
push str._IS_E_
push dword [ebp - 0x14]
call edi
cmp dword [ebp - 0x110], ebx
je 0x41d738
lea ecx, [ebp - 0x11c]
call fcn.004042dd
push eax
mov dword [ebp - 0x20], eax
call esi
inc eax
push eax
push dword [ebp - 0x20]
push 1
push ebx
push str._IS_V_
push dword [ebp - 0x14]
call edi
cmp dword [ebp - 0x14], ebx
je 0x41d749
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0xd]
push 1
push eax
push str._IS_T_
lea ecx, [ebp - 0xe8]
call fcn.00402d70
lea eax, [ebp - 0xe8]
lea ecx, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x25c]
push eax
mov byte [ebp - 4], 0x1b
call fcn.00404e25
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x1a
call fcn.00402438
lea eax, [ebp - 0xd]
push 1
push eax
push str._IS_E_
lea ecx, [ebp - 0xe8]
call fcn.00402d70
lea eax, [ebp - 0xe8]
lea ecx, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x20c]
push eax
mov byte [ebp - 4], 0x1c
call fcn.00404e25
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x1a
call fcn.00402438
cmp dword [ebp - 0x110], ebx
je 0x41d817
lea eax, [ebp - 0xd]
push 1
push eax
push str._IS_V_
lea ecx, [ebp - 0xe8]
call fcn.00402d70
lea eax, [ebp - 0xe8]
lea ecx, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x11c]
push eax
mov byte [ebp - 4], 0x1d
call fcn.00404e25
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x1a
call fcn.00402438
lea ecx, [ebp - 0xc0]
call fcn.004042dd
push eax
mov dword [ebp - 0x20], eax
call esi
inc eax
push eax
push dword [ebp - 0x20]
push 1
push ebx
push str.ISSetup
push dword [ebp - 0x18]
call edi
cmp dword [ebp - 0x18], ebx
je 0x41d84b
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x14], ebx
je 0x41d85c
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x14], ebx
lea ecx, [ebp - 0x20c]
mov byte [ebp - 4], 0x17
call fcn.00402438
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0x16
call fcn.00402438
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x12
call fcn.00402438
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x11
call fcn.00402438
lea ecx, [ebp - 0x144]
mov byte [ebp - 4], 0x10
call fcn.00402438
lea ecx, [ebp - 0x16c]
mov byte [ebp - 4], 0xf
call fcn.00402438
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 0xa
call fcn.00402438
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 9
call fcn.00402438
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 5
call fcn.00402438
mov esi, dword [ebp - 0x38]
xor eax, eax
lea edi, [ebp - 0x97]
mov byte [ebp - 0x98], bl
push 1
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosb byte es:[edi], al
lea eax, [ebp + 0xb]
lea ecx, [ebp - 0xe8]
push eax
push dword [0x48b7fc]
call fcn.00401884
lea eax, [ebp - 0x1e4]
push 5
push eax
mov ecx, esi
mov byte [ebp - 4], 0x1e
call fcn.0040a446
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x1f
push ecx
mov ecx, eax
call fcn.00423f17
push 0xa
lea ecx, [ebp - 0xe8]
push ebx
push ecx
push eax
mov ecx, esi
mov byte [ebp - 4], 0x20
call fcn.0042e8d0
lea ecx, [ebp - 0x8c]
mov edi, eax
mov byte [ebp - 4], 0x1f
call fcn.00401093
lea ecx, [ebp - 0x1e4]
mov byte [ebp - 4], 0x1e
call fcn.00402438
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 5
call fcn.00401093
push 0xb
mov ecx, esi
call fcn.0040a421
test al, al
jne 0x41d991
cmp edi, 1
je 0x41d991
cmp edi, 2
jne 0x41da25
push 4
lea eax, [ebp - 0x98]
push 0x4a2374
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea ecx, [ebp - 0x5c]
call fcn.004028f6
lea eax, [ebp - 0x6ac]
lea ecx, [ebp - 0x5c]
push eax
mov byte [ebp - 4], 0x21
call fcn.0040293e
lea eax, [ebp - 0x8c]
push 5
push eax
mov ecx, esi
call fcn.0040a446
mov ecx, eax
mov byte [ebp - 4], 0x22
call fcn.004042dd
lea ecx, [ebp - 0x98]
push ecx
lea ecx, [ebp - 0x5c]
push dword [0x48b7fc]
push eax
call fcn.0040297d
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x21
call fcn.00402438
lea ecx, [ebp - 0x5c]
call fcn.0040296a
push 1
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x23
call fcn.00403091
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 5
call fcn.00403aee
cmp dword [ebp - 0x30], 3
je 0x41da4d
mov esi, dword [esi + 0x164]
cmp byte [esi + 1], bl
je 0x41da42
cmp byte [esi + 2], bl
jne 0x41da42
call fcn.00436211
jmp 0x41da4d
push 0x453
call fcn.004353a4
pop ecx
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 4
call fcn.00402438
cmp dword [ebp - 0x18], ebx
je 0x41da6d
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x18], ebx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xc0]
call fcn.00402438
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 8