Function at 0x45fb94
Capabilities:
Encode data using base64
Parse credit card information
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x94
push ebx
push esi
push edi
mov dword [ebp + 0x18], ecx
push ecx
lea ecx, [ebp - 0x24]
call fcn.00446db5
mov eax, dword [ebp + 0x78]
xor ebx, ebx
mov dword [ebp + 0x20], eax
lea eax, [ebp + 0x78]
push eax
mov byte [ebp + 0x32], 0xff
mov byte [ebp + 0x66], bl
mov byte [ebp + 0x53], bl
mov byte [ebp + 0x43], bl
mov dword [ebp - 8], ebx
call fcn.0043e425
push 0xa
lea eax, [ebp + 0x78]
push eax
push str.___initram
call fcn.00446a34
add esp, 0x10
test al, al
jne 0x4600bf
mov dword [ebp + 0x68], ebx
mov esi, dword [ebp + 0x78]
mov ax, word [esi]
cmp ax, 0x2d
mov dword [ebp + 0x54], ebx
mov dword [ebp + 0x58], 0xfffffff0
mov byte [ebp + 0x6f], 0
mov byte [ebp + 0x63], 0
mov byte [ebp + 0x65], 0
mov byte [ebp + 0x67], 0
mov byte [ebp + 0x26], 0
mov byte [ebp + 0x64], 0
mov byte [ebp + 0x25], 0
mov byte [ebp + 0x27], 0
mov dword [ebp + 0x48], ebx
mov cl, 0x2a
jne 0x45fc2a
mov cl, al
movsx ecx, cl
movzx eax, ax
cmp ecx, eax
mov dword [ebp + 0x14], ecx
jne 0x45febd
movzx eax, word [esi + 2]
cmp dword [ebp + 0x14], eax
jne 0x45febd
xor eax, eax
lea ecx, [esi + 4]
mov ax, word [ecx]
mov edx, eax
and dx, 0xffdf
cmp dx, 0x48
je 0x45febd
call fcn.00402d55
test al, al
jne 0x45febd
xor edi, edi
mov esi, ecx
inc edi
push edi
push esi
push 0x4c91b4
mov dword [ebp + 0x78], esi
call fcn.0043f884
add esp, 0xc
test al, al
je 0x45fcd2
lea eax, [ebp + 0x78]
add esi, 2
push eax
mov dword [ebp + 0x28], esi
call fcn.00409168
cmp word [esi], 0x3a
pop ecx
je 0x45fca8
or dword [ebp + 0x48], 7
jmp 0x45feae
lea eax, [ebp + 0x4c]
push eax
inc esi
lea eax, [ebp + 0x28]
inc esi
push eax
mov dword [ebp + 0x4c], ebx
mov dword [ebp + 0x28], esi
call fcn.00440edc
test eax, eax
pop ecx
pop ecx
jle 0x45feae
mov eax, dword [ebp + 0x4c]
or dword [ebp + 0x48], eax
jmp 0x45feae
push 2
push esi
push 0x4c91b0
call fcn.0043f884
add esp, 0xc
test al, al
lea eax, [ebp + 0x78]
je 0x45fd1e
add esi, 4
push eax
mov dword [ebp + 0xc], esi
call fcn.00409168
lea eax, [ebp + 0x4c]
push eax
lea eax, [ebp + 0xc]
push eax
mov dword [ebp + 0x4c], ebx
call fcn.004515da
add esp, 0xc
test eax, eax
jle 0x45feae
mov eax, dword [ebp + 0x4c]
mov dword [ebp + 0x54], eax
mov dword [ebp + 0x58], ebx
jmp 0x45feae
push 2
pop esi
push esi
push eax
push 0x4c5384
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fd3d
mov byte [ebp + 0x65], 1
jmp 0x45feae
push 3
lea eax, [ebp + 0x78]
push eax
push 0x4c91ac
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fd5d
mov byte [ebp + 0x43], 1
jmp 0x45feae
push 4
lea eax, [ebp + 0x78]
push eax
push str.byte
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fd7d
mov byte [ebp + 0x64], 1
jmp 0x45feae
push edi
lea eax, [ebp + 0x78]
push eax
push 0x4c36dc
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fd9c
mov byte [ebp + 0x67], 3
jmp 0x45feae
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4c91a0
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fdbb
or byte [ebp + 0x67], 1
jmp 0x45feae
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4c919c
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fdda
or byte [ebp + 0x67], 2
jmp 0x45feae
push 4
lea eax, [ebp + 0x78]
push eax
push str.name
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fdfa
mov byte [ebp + 0x26], 1
jmp 0x45feae
push edi
lea eax, [ebp + 0x78]
push eax
push 0x4c9190
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fe18
inc byte [ebp + 0x66]
jmp 0x45feae
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4c918c
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fe33
dec byte [ebp + 0x66]
jmp 0x45feae
push edi
lea eax, [ebp + 0x78]
push eax
push 0x4c9188
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fe4e
inc byte [ebp + 0x53]
jmp 0x45feae
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4c9184
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fe6a
mov byte [ebp + 0x25], 1
jmp 0x45feae
push 4
lea eax, [ebp + 0x78]
push eax
push str.init
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fe87
mov byte [ebp + 0x27], 1
jmp 0x45feae
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4c0e20
call fcn.00446a34
add esp, 0xc
test al, al
je 0x45fea4
call fcn.004427a6
jmp 0x45feae
lea eax, [ebp + 0x78]
push eax
call fcn.00409168
pop ecx
mov esi, dword [ebp + 0x78]
movzx eax, word [esi]
cmp dword [ebp + 0x14], eax
je 0x45fc3b
lea ecx, [ebp + 8]
call fcn.00444a10
lea ecx, [ebp - 0x14]
call fcn.00444a10
lea ecx, [ebp + 0x10]
call fcn.00444a10
lea ecx, [ebp + 4]
call fcn.00444a10
lea ecx, [ebp - 4]
call fcn.00444a10
xor eax, eax
mov ax, word [esi]
mov ecx, eax
or ecx, 0x20
cmp cx, 0x6e
je 0x45ff37
cmp cx, 0x75
je 0x45ff37
cmp cx, 0x62
je 0x45ff37
cmp ax, 0x5e
je 0x45ff37
cmp ax, 0x2b
je 0x45ff37
cmp ax, 0x23
je 0x45ff37
cmp ax, 0x40
je 0x45ff37
cmp ax, 0x24
je 0x45ff37
cmp ax, 0x2a
je 0x45ff37
cmp ax, 0x7e
je 0x45ff37
cmp ax, 0x2e
je 0x45ff37
cmp ax, 0x3f
jne 0x45ff50
mov al, byte [esi]
inc esi
inc esi
test al, al
mov byte [ebp + 0x6f], al
mov dword [ebp + 0x78], esi
je 0x45ff50
movzx eax, word [esi]
movsx ecx, byte [ebp + 0x6f]
cmp ecx, eax
je 0x45ff56
cmp word [esi], 0x24
jne 0x45ff60
mov al, byte [esi]
inc esi
inc esi
mov byte [ebp + 0x63], al
mov dword [ebp + 0x78], esi
cmp byte [ebp + 0x6f], 0x41
jl 0x45ff70
cmp byte [ebp + 0x6f], 0x5a
jg 0x45ff70
or byte [ebp + 0x6f], 0x20
lea eax, [ebp + 0x78]
push eax
call fcn.0043e425
mov edi, dword [ebp + 0x78]
mov dword [esp], 0x4c9174
push edi
mov dword [ebp + 0x4c], edi
call dword [sym.imp.shlwapi.dll_StrStrW]
mov esi, eax
cmp esi, ebx
je 0x45ff96
lea edi, [esi + 4]
mov edx, edi
mov dword [ebp + 0x3c], edx
cmp word [edi], bx
je 0x460029
mov ax, word [edx]
cmp ax, 0x2c
je 0x45ffe0
cmp ax, 0x3d
je 0x460029
cmp ax, 0x21
jne 0x45ffd4
lea eax, [edx + 2]
mov dword [ebp + 0x28], eax
lea eax, [ebp + 0x28]
push eax
call fcn.0043e425
mov eax, dword [ebp + 0x28]
cmp word [eax], bx
pop ecx
je 0x460029
lea edx, [eax - 2]
inc edx
inc edx
mov dword [ebp + 0x3c], edx
cmp word [edx], bx
jne 0x45ffa4
jmp 0x460029
add edx, 2
push 0x3d
push edx
call dword [sym.imp.shlwapi.dll_StrChrW]
cmp eax, ebx
je 0x45fff4
mov edx, eax
jmp 0x460021
mov eax, dword [ebp + 0x3c]
add eax, 2
push 0x21
push eax
call dword [sym.imp.shlwapi.dll_StrChrW]
mov edx, eax
cmp edx, ebx
je 0x460026
lea eax, [edx + 2]
mov dword [ebp + 0x28], eax
lea eax, [ebp + 0x28]
push eax
call fcn.0043e425
mov eax, dword [ebp + 0x28]
cmp word [eax], bx
pop ecx
jne 0x460026
mov dword [ebp + 0x3c], edx
jmp 0x460029
mov edx, dword [ebp + 0x3c]
mov ax, word [edx]
cmp ax, 0x2c
je 0x46003e
cmp ax, 0x3d
je 0x46003e
cmp ax, 0x21
jne 0x460052
mov al, byte [edx]
mov word [edx], bx
add dword [ebp + 0x3c], 2
test al, al
mov byte [ebp + 0x33], al
jne 0x4600d8
inc byte [ebp + 0x32]
cmp byte [ebp + 0x32], 0
jg 0x4600ce
mov ecx, dword [ebp + 0x18]
push 1
push ebx
lea eax, [ebp - 8]
push eax
push dword [ebp + 0x20]
call fcn.00455dfb
mov eax, dword [ebp - 8]
lea ecx, [ebp - 4]
mov dword [ebp + 0x78], eax
call fcn.0043e48d
lea ecx, [ebp + 4]
call fcn.0043e48d
lea ecx, [ebp + 0x10]
call fcn.0043e48d
lea ecx, [ebp - 0x14]
call fcn.0043e48d
lea ecx, [ebp + 8]
call fcn.0043e48d
lea eax, [ebp + 0x78]
push eax
call fcn.0043e425
push 0xa
lea eax, [ebp + 0x78]
push eax
push str.___initram
call fcn.00446a34
add esp, 0x10
test al, al
je 0x45fbed
push 3
call fcn.00412c8a
pop ecx
xor esi, esi
jmp 0x461143
mov esi, 0x80070057
jmp 0x46111b
cmp esi, ebx
mov dword [ebp - 0xc], ebx
jne 0x4600f1
push 0x5c
push ebx
push edi
mov edi, dword [sym.imp.shlwapi.dll_StrRChrW]
call edi
mov esi, eax
cmp esi, ebx
je 0x460141
mov ecx, dword [ebp + 0x18]
push 1
push ebx
lea eax, [ebp + 8]
mov word [esi], bx
push eax
push dword [ebp + 0x78]
inc esi
inc esi
call fcn.00455dfb
mov eax, dword [ebp + 8]
push 0x5c
push eax
mov dword [ebp + 0x4c], eax
call dword [sym.imp.shlwapi.dll_StrChrW]
cmp eax, ebx
mov dword [ebp + 0x5c], eax
je 0x460126
mov word [eax], bx
inc eax
inc eax
mov dword [ebp + 0x5c], eax
mov ecx, dword [ebp + 0x18]
push 1
push ebx
lea eax, [ebp - 0xc]
push eax
push esi
call fcn.00455dfb
mov eax, dword [ebp - 0xc]
mov dword [ebp + 0x34], eax
jmp 0x4601ca
push 1
push 0x2c
lea eax, [ebp + 0x4c]
push eax
lea ecx, [ebp - 0x24]
call fcn.004581ad
push ebx
lea ecx, [ebp + 8]
push ecx
push eax
call fcn.0044785b
mov eax, dword [ebp + 8]
add esp, 0xc
push 0x5c
push eax
mov dword [ebp + 0x4c], eax
call dword [sym.imp.shlwapi.dll_StrChrW]
mov esi, eax
cmp esi, ebx
jne 0x46017e
mov esi, 0x80070057
jmp 0x461113
mov word [esi], bx
inc esi
inc esi
push 0x4c9174
push esi
mov dword [ebp + 0x5c], esi
call dword [sym.imp.shlwapi.dll_StrStrW]
cmp byte [ebp + 0x67], 0
mov dword [ebp + 0x34], eax
je 0x4601ac
cmp eax, ebx
jne 0x4601bd
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
lea eax, [esi + eax*2]
mov dword [ebp + 0x34], eax
cmp eax, ebx
jne 0x4601bd
push 0x5c
push ebx
push esi
call edi
cmp eax, ebx
mov dword [ebp + 0x34], eax
je 0x460174
cmp word [eax], bx
je 0x4601ca
mov word [eax], bx
inc eax
inc eax
mov dword [ebp + 0x34], eax
cmp word [eax], 0x5c
jne 0x4601d5
inc eax
inc eax
mov dword [ebp + 0x34], eax
cmp byte [ebp + 0x26], 0
mov dword [ebp + 0x28], ebx
je 0x4601f9
lea eax, [ebp + 0x28]
push eax
lea eax, [ebp + 0x3c]
push eax
push dword [ebp + 0x18]
call fcn.00454664
mov eax, dword [ebp + 0x28]
add esp, 0xc
mov dword [ebp + 0x3c], eax
jmp 0x4601fc
mov eax, dword [ebp + 0x3c]
cmp byte [ebp + 0x33], 0x2c
jne 0x46028d
push 1
push 0x2c
lea eax, [ebp + 0x3c]
push eax
lea ecx, [ebp - 0x24]
call fcn.004581ad
push ebx
lea ecx, [ebp + 0x10]
push ecx
push eax
call fcn.0044785b
mov ecx, dword [ebp + 0x18]
add esp, 0xc
push ebx
lea eax, [ebp + 0x10]
push eax
call fcn.00402ee8
cmp byte [ebp + 0x6f], 0x2e
jne 0x46026f
mov eax, dword [ebp + 0x3c]
cmp word [eax], 0x2c
jne 0x46026f
add dword [ebp + 0x3c], 2
push 1
push 0x2c
lea eax, [ebp + 0x3c]
push eax
lea ecx, [ebp - 0x24]
call fcn.004581ad
push ebx
lea ecx, [ebp - 4]
push ecx
push eax
call fcn.0044785b
mov ecx, dword [ebp + 0x18]
add esp, 0xc
push ebx
lea eax, [ebp - 4]
push eax
call fcn.00402ee8
mov eax, dword [ebp + 0x10]
cmp word [eax], bx
jne 0x460386
push str.RegDat
lea ecx, [ebp + 0x10]
call fcn.0044dfe2
jmp 0x460386
cmp byte [ebp + 0x33], 0x21
je 0x460386
cmp word [eax], bx
jne 0x4602c0
cmp byte [ebp + 0x6f], 0x24
je 0x4602df
cmp byte [ebp + 0x6f], 0x2a
je 0x4602c0
cmp byte [ebp + 0x6f], 0x7e
je 0x4602c0
cmp byte [ebp + 0x53], 0
je 0x460386
mov dword [ebp + 0x68], eax
jmp 0x460386
cmp byte [ebp + 0x6f], 0x24
je 0x4602df
cmp byte [ebp + 0x6f], 0x2a
je 0x4602df
cmp byte [ebp + 0x6f], 0x7e
je 0x4602df
lea eax, [ebp + 0x3c]
push eax
call fcn.0043e425
mov eax, dword [ebp + 0x3c]
pop ecx
push eax
lea ecx, [ebp + 0x14]
call fcn.0044df7a
mov edx, dword [ebp + 0x14]
lea eax, [ebp + 0x78]
push eax
mov dword [ebp + 0x78], edx
call fcn.0043e425
cmp byte [ebp + 0x7c], 0
pop ecx
je 0x460309
push edx
lea ecx, [ebp + 4]
call fcn.0044dfe2
jmp 0x460319
mov ecx, dword [ebp + 0x18]
push 1
push ebx
lea eax, [ebp + 4]
push eax
push edx
call fcn.004549e1
mov eax, dword [ebp + 4]
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x7c], eax
lea eax, [ebp + 0x7c]
push eax
call fcn.0043e425
cmp byte [ebp + 0x6f], 0
pop ecx
jne 0x460364
push dword [ebp + 0x78]
push 0x4c915c
call dword [sym.imp.KERNEL32.DLL_lstrcmpW]
test eax, eax
jne 0x46034d
mov dword [ebp + 0x68], 0x4bfa2c
jmp 0x46037e
mov ecx, dword [ebp + 0x7c]
mov ax, word [ecx]
cmp ax, 0x23
je 0x46035f
cmp ax, 0x40
jne 0x46037e
mov dword [ebp + 0x68], ecx
jmp 0x46037e
cmp byte [ebp + 0x6f], 0x23
je 0x460370
cmp byte [ebp + 0x6f], 0x40
jne 0x46037e
mov eax, dword [ebp + 0x7c]
cmp word [eax], bx
mov dword [ebp + 0x68], eax
jne 0x46037e
mov dword [ebp + 0x68], ebx
lea ecx, [ebp + 0x14]
call fcn.0043e48d
mov edi, dword [ebp + 0x4c]
mov esi, dword [sym.imp.KERNEL32.DLL_lstrcmpiW]
push str.HKLM
push edi
mov dword [ebp + 0x78], ebx
call esi
test eax, eax
je 0x460460
push str.HKEY_LOCAL_MACHINE
push edi
call esi
test eax, eax
je 0x460460
push str.HKCU
push edi
call esi
test eax, eax
je 0x460457
push str.HKEY_CURRENT_USER
push edi
call esi
test eax, eax
je 0x460457
push str.HKCR
push edi
call esi
test eax, eax
je 0x46044e
push str.HKEY_CLASSES_ROOT
push edi
call esi
test eax, eax
je 0x46044e
push 0x4c90c0
push edi
call esi
test eax, eax
je 0x460445
push str.HKEY_USERS
push edi
call esi
test eax, eax
je 0x460445
push str.HKCC
push edi
call esi
test eax, eax
je 0x46043c
push str.HKEY_CURRENT_CONFIG
push edi
call esi
test eax, eax
je 0x46043c
lea eax, [ebp + 0x78]
push eax
lea eax, [ebp + 0x4c]
push eax
call fcn.00447df7
test eax, eax
pop ecx
pop ecx
je 0x460432
cmp dword [ebp + 0x78], ebx
jne 0x460467
mov esi, 0x80070057
jmp 0x46110b
mov dword [ebp + 0x78], 0x80000005
jmp 0x460467
mov dword [ebp + 0x78], 0x80000003
jmp 0x460467
mov dword [ebp + 0x78], 0x80000000
jmp 0x460467
mov dword [ebp + 0x78], 0x80000001
jmp 0x460467
mov dword [ebp + 0x78], 0x80000002
mov eax, dword [ebp + 0x10]
cmp word [eax], bx
je 0x460bab
cmp byte [ebp + 0x6f], 0x2e
je 0x460482
cmp byte [ebp + 0x6f], 0x3f
mov dword [ebp + 0x38], ebx
jne 0x46048f
cmp byte [ebp + 0x6f], 0x3f
mov dword [ebp + 0x38], 1
je 0x46049e
cmp dword [ebp + 0x38], ebx
je 0x460499
cmp word [eax], bx
je 0x46049e
mov dword [ebp + 0x48], ebx
jmp 0x4604a5
mov dword [ebp + 0x48], 1
push ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push 0x64
lea ecx, [ebp + 0x68]
mov dword [ebp + 0xc], ebx
call fcn.00444a2e
lea ecx, [ebp + 0x4c]
call fcn.00444a10
cmp byte [ebp + 0x6f], 0x2e
lea eax, [ebp + 0x4c]
je 0x4604cd
lea eax, [ebp + 0x68]
push 0x1000
lea ecx, [ebp + 0x44]
mov dword [ebp + 0x2c], eax
call fcn.004448b9
cmp byte [ebp + 0x67], 0
lea eax, [ebp + 0x7c]
mov dword [ebp], 0xfff
mov dword [ebp + 0x7c], ebx
mov dword [ebp + 0x20], ebx
push eax
je 0x460676
movzx eax, word [0x4dac14]
or eax, 9
push eax
push ebx
push dword [ebp + 0x5c]
mov dword [ebp + 0x34], ebx
push dword [ebp + 0x78]
mov dword [ebp + 0x38], ebx
mov dword [ebp + 0x48], ebx
mov dword [ebp + 0x14], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp + 0x7c], ebx
call dword [sym.imp.advapi32.dll_RegOpenKeyExW]
push ebx
push ebx
mov esi, dword [sym.imp.advapi32.dll_RegQueryInfoKeyW]
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp + 0x48]
push eax
lea eax, [ebp + 0x38]
push eax
push ebx
push ebx
push ebx
push dword [ebp + 0x7c]
call esi
push ebx
push ebx
push ebx
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp + 0x14]
push eax
push ebx
lea eax, [ebp + 0x48]
push eax
lea eax, [ebp + 0x38]
push eax
push ebx
push ebx
push ebx
push dword [ebp + 0x7c]
call esi
mov dword [ebp + 0x78], eax
mov eax, dword [ebp - 0x18]
cmp dword [ebp + 0x48], eax
jae 0x460568
mov dword [ebp + 0x48], eax
mov eax, dword [ebp + 0x48]
lea eax, [eax*4 + 0x20]
mov dword [ebp - 0x10], eax
shr eax, 1
add eax, 8
push eax
lea ecx, [ebp + 0x58]
call fcn.00444a2e
mov esi, dword [ebp + 0x58]
mov word [esi], 0xd
mov word [esi + 2], 0xa
lea ebx, [esi + 4]
mov word [ebx], 0x76
lea edi, [esi + 8]
mov word [esi + 6], 0x20
and word [edi], 0
cmp byte [ebp + 0x67], 3
mov dword [ebp + 0x5c], ebx
je 0x4605b1
mov edi, ebx
cmp dword [ebp + 0x78], 0
jne 0x46065a
test byte [ebp + 0x67], 1
je 0x460608
and dword [ebp + 0x78], 0
cmp dword [ebp + 0x14], 0
jle 0x460608
mov eax, dword [ebp - 0x10]
mov dword [ebp + 0x34], eax
xor eax, eax
push eax
push eax
push eax
push eax
mov word [edi], ax
lea eax, [ebp + 0x34]
push eax
push edi
push dword [ebp + 0x78]
push dword [ebp + 0x7c]
call dword [sym.imp.advapi32.dll_RegEnumValueW]
test eax, eax
jne 0x4605fd
push dword [ebp + 0x5c]
lea ecx, [ebp + 0x68]
call fcn.00444a7c
mov dword [ebp + 0x5c], esi
inc dword [ebp + 0x78]
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x14]
jl 0x4605cb
test byte [ebp + 0x67], 2
mov word [ebx], 0x6b
je 0x46065a
and dword [ebp + 0x78], 0
cmp dword [ebp + 0x38], 0
jle 0x46065a
xor ebx, ebx
mov eax, dword [ebp - 0x10]
push ebx
push ebx
push ebx
push ebx
mov dword [ebp + 0x34], eax
lea eax, [ebp + 0x34]
push eax
push edi
push dword [ebp + 0x78]
mov word [edi], bx
push dword [ebp + 0x7c]
call dword [sym.imp.advapi32.dll_RegEnumKeyExW]
test eax, eax
jne 0x46064f
push dword [ebp + 0x5c]
lea ecx, [ebp + 0x68]
call fcn.00444a7c
mov dword [ebp + 0x5c], esi
inc dword [ebp + 0x78]
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x38]
jl 0x46061f
cmp dword [ebp + 0x7c], 0
je 0x460669
push dword [ebp + 0x7c]
call dword [sym.imp.advapi32.dll_RegCloseKey]
lea ecx, [ebp + 0x58]
call fcn.0043e48d
jmp 0x460b58
lea eax, [ebp]
push eax
lea eax, [ebp + 0x44]
push eax
push dword [ebp + 0x34]
push dword [ebp + 0x5c]
push dword [ebp + 0x78]
call fcn.00449089
mov esi, dword [ebp + 0x7c]
add esp, 0x18
cmp esi, ebx
mov edi, eax
je 0x460703
mov eax, dword [ebp + 0x34]
cmp word [eax], bx
jne 0x4606be
cmp esi, 2
jne 0x4606be
cmp edi, 0xfffffffe
jne 0x4606be
cmp dword [ebp + 0x38], ebx
je 0x460b5a
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x4c9070
jmp 0x4606cf
cmp dword [ebp + 0x38], ebx
mov dword [ebp + 0xc], esi
je 0x4606dc
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.ERROR
mov ecx, dword [ebp + 0x2c]
call fcn.00444acb
jmp 0x460b5a
cmp byte [ebp + 0x27], 0
jne 0x460b5a
lea ecx, [ebp + 0x44]
call fcn.0043e48d
lea ecx, [ebp + 0x4c]
call fcn.0043e48d
lea ecx, [ebp + 0x68]
call fcn.0043e48d
jmp 0x46110b
cmp dword [ebp + 0x58], ebx
jl 0x460724
jg 0x46070f
cmp dword [ebp + 0x54], ebx
jb 0x460724
xor eax, eax
cmp dword [ebp + 0x54], edi
jne 0x46071b
cmp dword [ebp + 0x58], eax
je 0x460724
mov dword [ebp + 0x5c], 1
jmp 0x460727
mov dword [ebp + 0x5c], ebx
cmp edi, 1
mov byte [ebp + 0x7b], 0
mov byte [ebp + 0x7f], 0xff
mov eax, str.REG_SZ
jne 0x460741
mov bl, 0x24
mov byte [ebp + 0x7f], 0
jmp 0x46075b
cmp edi, 6
jne 0x46074f
mov eax, str.REG_LINK
mov bl, 0x5e
jmp 0x46075b
cmp edi, 0x15
jne 0x4607b2
mov eax, str.REG_MUI_SZ
mov bl, 0x75
xor esi, esi
cmp dword [ebp + 0x38], esi
je 0x460778
mov ecx, dword [ebp + 0x2c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
call fcn.00444acb
cmp dword [ebp + 0x48], esi
jne 0x460b58
cmp dword [ebp + 0x5c], esi
jne 0x460ae7
cmp dword [ebp + 0x58], esi
jg 0x4607a1
jl 0x46078d
cmp dword [ebp + 0x54], esi
jae 0x4607a1
mov al, byte [ebp + 0x6f]
cmp bl, al
je 0x4607a1
cmp al, 0x2e
je 0x4607a1
cmp byte [ebp + 0x7f], al
jne 0x460ae7
mov eax, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x44]
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x44], eax
jmp 0x460b58
cmp edi, 0xb
jne 0x460824
cmp dword [ebp + 0x38], ebx
je 0x4607d6
mov ecx, dword [ebp + 0x2c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_QWORD
call fcn.00444acb
cmp dword [ebp + 0x48], ebx
jne 0x460b58
cmp dword [ebp + 0x5c], ebx
jne 0x460ae7
cmp dword [ebp + 0x58], ebx
jg 0x4607fb
jl 0x4607eb
cmp dword [ebp + 0x54], ebx
jae 0x4607fb
cmp byte [ebp + 0x6f], 0x2b
je 0x4607fb
cmp byte [ebp + 0x6f], 0x2e
jne 0x460ae7
cmp byte [ebp + 0x43], 0
mov eax, str._I64u
jne 0x46080b
mov eax, str.0x_I64x
push eax
mov eax, dword [ebp + 0x44]
push dword [eax + 4]
push dword [eax]
push dword [ebp + 0x68]
call fcn.0049a87f
add esp, 0x10
jmp 0x460b58
cmp edi, 4
mov esi, dword [ebp + 0x44]
jne 0x460871
cmp dword [ebp + 0x38], ebx
je 0x46084b
mov ecx, dword [ebp + 0x2c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_DWORD
call fcn.00444acb
cmp dword [ebp + 0x48], ebx
jne 0x460b58
cmp dword [ebp + 0x5c], ebx
jne 0x460ae7
cmp dword [ebp + 0x58], ebx
jg 0x4608d0
jl 0x460860
cmp dword [ebp + 0x54], ebx
jae 0x4608d0
cmp byte [ebp + 0x6f], 0x23
je 0x4608d0
cmp byte [ebp + 0x6f], 0x2e
je 0x4608d0
jmp 0x460ae7
cmp edi, 5
jne 0x4608f4
cmp dword [ebp + 0x38], ebx
je 0x460895
mov ecx, dword [ebp + 0x2c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_DWORD_BIG_ENDIAN
call fcn.00444acb
cmp dword [ebp + 0x48], ebx
jne 0x460b58
cmp dword [ebp + 0x5c], ebx
jne 0x460ae7
cmp dword [ebp + 0x58], ebx
jg 0x4608ba
jl 0x4608aa
cmp dword [ebp + 0x54], ebx
jae 0x4608ba
cmp byte [ebp + 0x6f], 0x62
je 0x4608ba
cmp byte [ebp + 0x6f], 0x2e
jne 0x460ae7
mov cl, byte [esi + 3]
mov al, byte [esi]
mov byte [esi], cl
mov byte [esi + 3], al
mov cl, byte [esi + 2]
mov al, byte [esi + 1]
mov byte [esi + 1], cl
mov byte [esi + 2], al
cmp byte [ebp + 0x43], 0
mov eax, 0x4c5774
jne 0x4608e0
mov eax, str.0x_lx
push dword [esi]
push eax
push dword [ebp + 0x68]
call dword [sym.imp.user32.dll_wsprintfW]
add esp, 0xc
jmp 0x460b58
cmp edi, 2
jne 0x460962
cmp dword [ebp + 0x38], ebx
je 0x460918
mov ecx, dword [ebp + 0x2c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_EXPAND_SZ
call fcn.00444acb
cmp dword [ebp + 0x48], ebx
jne 0x460b58
cmp dword [ebp + 0x5c], ebx
jne 0x460ae7
cmp dword [ebp + 0x58], ebx
jg 0x46093d
jl 0x46092d
cmp dword [ebp + 0x54], ebx
jae 0x46093d
cmp byte [ebp + 0x6f], 0x7e
je 0x46093d
cmp byte [ebp + 0x6f], 0x2e
jne 0x460ae7
cmp byte [ebp + 0x63], 0
je 0x4607a1
mov eax, dword [ebp + 0x44]
push 1
push ebx
lea ecx, [ebp + 0x68]
push ecx
mov ecx, dword [ebp + 0x18]
push eax
mov dword [ebp + 0x3c], eax
call fcn.00455dfb
jmp 0x460b58
cmp edi, 7
jne 0x460a45
cmp dword [ebp + 0x38], ebx
je 0x46098a
mov ecx, dword [ebp + 0x2c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_MULTI_SZ
call fcn.00444acb
cmp dword [ebp + 0x48], ebx
jne 0x460b58
cmp dword [ebp + 0x5c], ebx
jne 0x460ae7
cmp dword [ebp + 0x58], ebx
jg 0x4609af
jl 0x46099f
cmp dword [ebp + 0x54], ebx
jae 0x4609af
cmp byte [ebp + 0x6f], 0x2a
je 0x4609af
cmp byte [ebp + 0x6f], 0x2e
jne 0x460ae7
mov esi, dword [ebp]
shr esi, 1
lea eax, [esi*4 + 6]
push eax
lea ecx, [ebp + 0x68]
call fcn.00444a55
mov ecx, dword [ebp + 0x44]
mov eax, dword [ebp + 0x68]
lea esi, [ecx + esi*2]
jmp 0x460a39
cmp byte [ebp + 0x63], 0x2a
jne 0x460a00
cmp word [ecx], 0x5c
jne 0x460a00
lea edx, [ecx + 2]
mov di, word [edx]
cmp di, 0x30
je 0x4609f2
cmp di, 0x5c
je 0x4609f2
cmp di, bx
jne 0x460a00
mov word [eax], 0x5c
mov ecx, edx
mov dx, word [ecx]
inc eax
inc eax
jmp 0x460a08
mov dx, word [ecx]
cmp dx, bx
je 0x460a11
mov word [eax], dx
inc eax
inc eax
inc ecx
inc ecx
jmp 0x460a39
inc ecx
inc ecx
cmp byte [ebp + 0x63], 0x24
jne 0x460a2b
cmp ecx, esi
jae 0x460a3d
mov word [eax], 0xd
inc eax
inc eax
mov word [eax], 0xa
jmp 0x460a37
mov word [eax], 0x5c
inc eax
inc eax
mov word [eax], 0x30
inc eax
inc eax
cmp ecx, esi
jb 0x4609cf
mov word [eax], bx
jmp 0x460b58
cmp edi, 3
jne 0x460a51
mov eax, str.REG_BINARY
jmp 0x460a7e
cmp edi, ebx
jne 0x460a5c
mov eax, str.REG_NONE
jmp 0x460a7e
cmp edi, 8
jne 0x460a68
mov eax, str.REG_RESOURCE_LIST
jmp 0x460a7e
cmp edi, 9
jne 0x460a74
mov eax, str.REG_FULL_RESOURCE_DESCRIPTOR
jmp 0x460a7e
cmp edi, 0xa
jne 0x460a9f
mov eax, str.REG_RESOURCE_REQUIREMENTS_LIST
cmp dword [ebp + 0x38], ebx
je 0x460a99
mov ecx, dword [ebp + 0x2c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
call fcn.00444acb
cmp dword [ebp + 0x48], ebx
jne 0x460b58
mov byte [ebp + 0x7b], 0x40
jmp 0x460aca
cmp dword [ebp + 0x38], ebx
je 0x460aca
mov esi, dword [ebp + 0x2c]
push 0x32
mov ecx, esi
call fcn.00444a55
push edi
push str.0x_lx
push dword [esi]
call dword [sym.imp.user32.dll_wsprintfW]
add esp, 0xc
cmp dword [ebp + 0x48], ebx
jne 0x460b58
cmp dword [ebp + 0x58], ebx
jg 0x460ae2
jl 0x460ad6
cmp dword [ebp + 0x54], ebx
jae 0x460ae2
mov al, byte [ebp + 0x6f]
cmp byte [ebp + 0x7b], al
je 0x460ae2
cmp al, 0x2e
jne 0x460ae7
cmp dword [ebp + 0x5c], ebx
je 0x460b04
lea ecx, [ebp + 0x44]
call fcn.0043e48d
lea ecx, [ebp + 0x4c]
call fcn.0043e48d
lea ecx, [ebp + 0x68]
call fcn.0043e48d
jmp 0x460432
mov eax, dword [ebp]
lea eax, [eax + eax*4 + 7]
push eax
lea ecx, [ebp + 0x68]
call fcn.00444a55
mov edi, dword [ebp + 0x68]
mov esi, dword [ebp + 0x44]
xor ebx, ebx
mov word [edi], bx
mov word [edi + 2], bx
cmp dword [ebp], ebx
mov dword [ebp + 0x20], 1
jle 0x460b58
cmp byte [ebp + 0x43], 0
mov ecx, 0x4c8f5c
jne 0x460b3f
mov ecx, str._0x_02X
movzx eax, byte [esi]
push eax
push ecx
push edi
call dword [sym.imp.user32.dll_wsprintfW]
add esp, 0xc
inc esi
inc ebx
add edi, 0xa
cmp ebx, dword [ebp]
jl 0x460b2f
xor ebx, ebx
mov eax, dword [ebp + 0x10]
cmp word [eax], bx
je 0x460b75
mov edx, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x20]
lea ecx, [edx + ecx*2]
push ecx
mov ecx, dword [ebp + 0x18]
push eax
call fcn.0044414b
mov eax, dword [ebp - 4]
cmp word [eax], bx
je 0x460b8b
mov ecx, dword [ebp + 0x2c]
push dword [ecx]
mov ecx, dword [ebp + 0x18]
push eax
call fcn.0044414b
lea ecx, [ebp + 0x44]
call fcn.0043e48d
lea ecx, [ebp + 0x4c]
call fcn.0043e48d
lea ecx, [ebp + 0x68]
call fcn.0043e48d
mov esi, dword [ebp + 0xc]
jmp 0x46110b
cmp dword [ebp + 0x68], ebx
je 0x461083
xor edx, edx
cmp byte [ebp + 0x66], dl
push 8
mov dword [ebp + 0x7c], edx
pop edi
mov dword [ebp + 0x1c], edx
mov dword [ebp + 0x20], edx
lea ebx, [ebp + 0x1c]
jg 0x460bcf
cmp byte [ebp + 0x53], dl
je 0x460bfa
movsx eax, byte [ebp + 0x66]
push eax
push dword [ebp + 0x5c]
push dword [ebp + 0x78]
call fcn.00441b89
add esp, 0xc
cmp byte [ebp + 0x66], 2
mov esi, eax
jge 0x461076
cmp byte [ebp + 0x53], 0
jne 0x461076
xor edx, edx
mov cl, byte [ebp + 0x6f]
cmp cl, 0x2b
je 0x460fc9
test cl, cl
jne 0x460c20
mov esi, dword [ebp + 0x68]
mov ax, word [esi]
cmp ax, 0x2b
jne 0x460c5e
inc esi
inc esi
mov dword [ebp + 0x68], esi
jmp 0x460fcc
cmp cl, 0x23
je 0x460f4f
cmp cl, 0x62
jne 0x460d0c
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], 5
mov dword [ebp + 0x58], edx
je 0x460c72
movsx eax, byte [ebp + 0x65]
push eax
lea eax, [ebp + 0x7c]
push eax
push dword [ebp + 0x68]
call fcn.00449178
mov ebx, dword [ebp + 0x7c]
add esp, 0xc
jmp 0x460ce2
cmp ax, 0x23
jne 0x460d37
inc esi
inc esi
mov dword [ebp + 0x68], esi
jmp 0x460f52
cmp byte [ebp + 0x65], 0
je 0x460cb2
mov edx, dword [ebp + 0x68]
xor ecx, ecx
mov cx, word [edx]
mov eax, ecx
call fcn.0044450d
test al, al
je 0x460d9a
cmp cx, 0x30
jne 0x460ca6
mov ax, word [edx + 2]
or ax, 0x20
cmp ax, 0x78
jne 0x460ca6
add edx, 4
push edx
call fcn.0044565f
pop ecx
mov dword [ebp + 0x1c], eax
jmp 0x460cca
lea eax, [ebp + 0x1c]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.004515da
cmp eax, 1
pop ecx
pop ecx
jl 0x461037
mov al, byte [ebp + 0x1c]
mov cl, byte [ebp + 0x1f]
mov byte [ebp + 0x1c], cl
mov cl, byte [ebp + 0x1e]
mov byte [ebp + 0x1f], al
mov al, byte [ebp + 0x1d]
mov byte [ebp + 0x1d], cl
mov byte [ebp + 0x1e], al
push 4
pop edi
push edi
push ebx
push dword [ebp + 0x54]
xor esi, esi
cmp byte [ebp + 0x25], 0
push dword [ebp + 0x34]
push dword [ebp + 0x5c]
push dword [ebp + 0x78]
je 0x461047
call dword [0x4db24c]
mov esi, eax
jmp 0x46104f
cmp cl, 0x2a
je 0x460e45
cmp cl, 0x7e
je 0x460ddc
cmp cl, 0x40
je 0x460dcd
cmp cl, 0x6e
mov esi, dword [ebp + 0x68]
jne 0x460d61
mov dword [ebp + 0x54], edx
jmp 0x460dd7
cmp ax, 0x2a
jne 0x460d47
inc esi
inc esi
mov dword [ebp + 0x68], esi
jmp 0x460e48
cmp ax, 0x7e
jne 0x460d57
push 2
pop edi
add esi, edi
jmp 0x460de2
cmp ax, 0x40
jne 0x460d61
inc esi
inc esi
jmp 0x460dd0
cmp dword [ebp + 0x58], edx
jg 0x460e58
jl 0x460d75
cmp dword [ebp + 0x54], edx
jae 0x460e58
cmp cl, 0x5e
jne 0x460d83
mov dword [ebp + 0x54], 6
jmp 0x460dae
cmp cl, 0x75
jne 0x460d91
mov dword [ebp + 0x54], 0x15
jmp 0x460dae
test cl, cl
je 0x460da7
cmp cl, 0x24
je 0x460da7
lea ecx, [ebp + 0x7c]
call fcn.0043e48d
jmp 0x460432
mov dword [ebp + 0x54], 1
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x58], edx
jne 0x460e58
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov edi, eax
shl edi, 1
mov ebx, esi
jmp 0x460ce5
mov esi, dword [ebp + 0x68]
mov dword [ebp + 0x54], 3
mov dword [ebp + 0x58], edx
jmp 0x460e58
mov esi, dword [ebp + 0x68]
push 2
pop edi
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], edi
mov dword [ebp + 0x58], edx
jne 0x460e58
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
add eax, 2
push eax
lea ecx, [ebp + 0x7c]
call fcn.00444a55
cmp word [esi], 0
mov ebx, dword [ebp + 0x7c]
mov ecx, esi
mov eax, ebx
je 0x460e36
mov dx, word [ecx]
cmp dx, 0x5c
jne 0x460e29
cmp word [ecx + 2], 0x30
jne 0x460e29
and word [eax], 0
add eax, edi
add ecx, 4
jmp 0x460e30
mov word [eax], dx
add eax, edi
add ecx, edi
cmp word [ecx], 0
jne 0x460e0e
and word [eax], 0
sub eax, ebx
add eax, edi
mov edi, eax
jmp 0x460ce5
mov esi, dword [ebp + 0x68]
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], 7
mov dword [ebp + 0x58], edx
je 0x460e6e
movsx eax, byte [ebp + 0x65]
push eax
lea eax, [ebp + 0x7c]
push eax
push esi
call fcn.00449178
mov edi, eax
jmp 0x460f70
mov esi, dword [ebp + 0x68]
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov ebx, eax
lea eax, [ebx + 0x10]
push eax
lea ecx, [ebp + 0x7c]
xor edi, edi
call fcn.00444a55
mov edx, dword [ebp + 0x7c]
lea ecx, [esi + ebx*2]
cmp esi, ecx
mov eax, esi
mov dword [ebp + 0xc], ecx
jae 0x460ecc
and word [edx], 0
cmp byte [ebp + 0x63], 0x2a
jne 0x460f03
cmp word [eax], 0x5c
jne 0x460f30
lea ecx, [eax + 2]
cmp word [ecx], 0x5c
jne 0x460f30
mov eax, ecx
mov cx, word [eax]
mov word [edx], cx
inc edx
inc edx
inc eax
inc eax
xor edi, edi
cmp eax, dword [ebp + 0xc]
jb 0x460e97
cmp edi, 1
jge 0x460ed3
and word [edx], 0
inc edi
inc edx
inc edx
test ebx, ebx
jle 0x460ef3
cmp edi, 2
jge 0x460ef3
push 2
pop esi
sub esi, edi
xor eax, eax
mov ecx, esi
shr ecx, 1
mov edi, edx
rep stosd dword es:[edi], eax
adc ecx, ecx
rep stosw word es:[edi], ax
lea edx, [edx + esi*2]
mov ebx, dword [ebp + 0x7c]
and word [edx], 0
sub edx, ebx
mov edi, edx
jmp 0x460ce5
cmp byte [ebp + 0x63], 0x24
jne 0x460f30
mov cx, word [eax]
cmp cx, 0xd
jne 0x460f1f
lea esi, [eax + 2]
cmp word [esi], 0xa
jne 0x460f1f
mov eax, esi
jmp 0x460f25
cmp cx, 0xa
jne 0x460eb9
and word [edx], 0
inc eax
inc eax
inc edx
inc edx
inc edi
jmp 0x460ec2
mov cx, word [eax]
cmp cx, 0x5c
jne 0x460eb9
cmp word [eax + 2], 0x30
jne 0x460eb9
and word [edx], 0
inc edx
inc edx
add eax, 4
jmp 0x460f2d
mov esi, dword [ebp + 0x68]
cmp byte [ebp + 0x64], 0
push 4
pop edi
mov dword [ebp + 0x54], edi
mov dword [ebp + 0x58], edx
je 0x460f7b
movsx eax, byte [ebp + 0x65]
push eax
lea eax, [ebp + 0x7c]
push eax
push esi
call fcn.00449178
mov ebx, dword [ebp + 0x7c]
add esp, 0xc
jmp 0x460ce5
cmp byte [ebp + 0x65], 0
je 0x460fba
xor ecx, ecx
mov cx, word [esi]
mov eax, ecx
call fcn.0044450d
test al, al
je 0x460d9a
cmp cx, 0x30
jne 0x460fab
mov ax, word [esi + 2]
or ax, 0x20
cmp ax, 0x78
jne 0x460fab
add esi, edi
push esi
call fcn.0044565f
pop ecx
mov dword [ebp + 0x1c], eax
jmp 0x460ce5
lea eax, [ebp + 0x1c]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.004515da
jmp 0x46102c
mov esi, dword [ebp + 0x68]
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], 0xb
mov dword [ebp + 0x58], edx
jne 0x460f61
cmp byte [ebp + 0x65], 0
je 0x46101f
xor ecx, ecx
mov cx, word [esi]
mov eax, ecx
call fcn.0044450d
test al, al
je 0x460d9a
cmp cx, 0x30
jne 0x46100d
mov ax, word [esi + 2]
or ax, 0x20
cmp ax, 0x78
jne 0x46100d
add esi, 4
push esi
call fcn.0044565f
pop ecx
mov dword [ebp + 0x1c], eax
mov dword [ebp + 0x20], edx
jmp 0x460ce5
lea eax, [ebp + 0x1c]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.00451370
cmp eax, 1
pop ecx
pop ecx
jge 0x460ce5
lea ecx, [ebp + 0x7c]
call fcn.0043e48d
xor esi, esi
inc esi
jmp 0x46110b
call fcn.0043f6e8
add esp, 0x18
cmp esi, 0x3fd
jne 0x461076
cmp byte [ebp + 0x66], 0
jne 0x461076
push 1
push dword [ebp + 0x5c]
mov byte [ebp + 0x66], 1
push dword [ebp + 0x78]
call fcn.00441b89
add esp, 0xc
jmp 0x460ce5
lea ecx, [ebp + 0x7c]
call fcn.0043e48d
jmp 0x46110b
cmp byte [ebp + 0x33], 0x21
jne 0x4610b5
mov eax, dword [ebp + 0x34]
cmp word [eax], bx
jne 0x4610b5
cmp dword [ebp + 0x48], ebx
je 0x4610a6
push dword [ebp + 0x48]
push dword [ebp + 0x5c]
push dword [ebp + 0x78]
call fcn.0044f4c5
jmp 0x4610ff
push dword [ebp + 0x5c]
push dword [ebp + 0x78]
call fcn.0044f2c4
pop ecx
pop ecx
jmp 0x461102
cmp dword [ebp + 0x48], ebx
je 0x4610f1
push ebx
lea eax, [ebp + 0x7c]
push eax
movzx eax, word [0x4dac14]
push ebx
or eax, 0x2001b
push eax
push ebx
push ebx
push ebx
push dword [ebp + 0x5c]
mov dword [ebp + 0x7c], ebx
push dword [ebp + 0x78]
call dword [sym.imp.advapi32.dll_RegCreateKeyExW]
cmp dword [ebp + 0x7c], ebx
mov esi, eax
je 0x461104
push dword [ebp + 0x7c]
call dword [sym.imp.advapi32.dll_RegCloseKey]
jmp 0x461104
push dword [ebp + 0x34]
push dword [ebp + 0x5c]
push dword [ebp + 0x78]
call fcn.0043f743
add esp, 0xc
mov esi, eax
cmp esi, 2
jne 0x46110b
xor esi, esi
lea ecx, [ebp + 0x28]
call fcn.0043e48d
lea ecx, [ebp - 0xc]
call fcn.0043e48d
lea ecx, [ebp - 4]
call fcn.0043e48d
lea ecx, [ebp + 4]
call fcn.0043e48d
lea ecx, [ebp + 0x10]
call fcn.0043e48d
lea ecx, [ebp - 0x14]
call fcn.0043e48d
lea ecx, [ebp + 8]
call fcn.0043e48d
lea ecx, [ebp - 8]
call fcn.0043e48d
lea ecx, [ebp - 0x24]
call fcn.0043e48d
pop edi
mov eax, esi
pop esi
pop ebx
add ebp, 0x70
leave
ret 8