Function at 0x4339d0
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e293c
mov eax, dword fs:[0]
push eax
sub esp, 0x258
mov eax, dword [0x678390]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x264], ecx
mov eax, dword [ebp + 8]
push 0x208
mov dword [ebp - 0x260], eax
lea eax, [ebp - 0x218]
push 0
push eax
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x25c], 0
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x254], 0
call fcn.00483520
add esp, 0xc
call fcn.00453765
test al, al
je 0x433a7d
fild dword [edi + 0x1167406c]
ret
push 1
xor eax, eax
mov dword [ebp - 0x234], 7
push 0x5ecfec
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.00402b90
push 0x24
push str.C3F37BD9_8872_46FF_85CE_DC58B69FDB53
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], 0
call fcn.00405d30
push 1
push 0x5ed03c
lea ecx, [ebp - 0x248]
call fcn.00405d30
call fcn.00453a17
test al, al
je 0x433af7
add byte [eax + eax*8 - 0x6ca2e88c], al
pop ebp
xchg ebx, eax
pop ecx
mov al, 0x57
xchg edi, eax
bound edx, qword [edx + 0x16d2122a]
call 0x7304ec13
xor al, 0x39
fdiv st(5), st(0)
invalid
call fcn.004537aa
test al, al
je 0x433b18
stc
jo 0x433adb
leave
pop edx
fisttp qword [0x9bab658e]
ret
call fcn.00453834
test al, al
je 0x433b39
invalid
cmp dword [ebp - 0x234], 8
lea ecx, [ebp - 0x24c]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push 0
push ecx
push 0
push 0xf003f
push 0
push 0
push 0
push eax
push dword [ebp - 0x260]
call ebx
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x433c4d
push 9
xor eax, eax
mov dword [ebp - 0x21c], 7
push 0x5e9c5c
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov word [ebp - 0x230], ax
call fcn.00402b90
push 6
push str._Class
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 1
call fcn.00405d30
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
nop
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x433be0
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x433c00
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x24c]
call esi
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 0
cmp eax, 8
jb 0x433c4d
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00402ce0
call fcn.004539d2
test al, al
je 0x433c6e
inc ecx
sbb al, 0xe9
and edx, dword [ebx]
sal ch, 0x99
add ebp, dword [0x6ebbfc75]
mov word [edx], ss
fist word [eax - 0x75]
xor eax, sym.imp.ADVAPI32.dll_RegSetValueExW
mov eax, dword [ebp - 0x24c]
test eax, eax
je 0x43406d
push 0
lea ecx, [ebp - 0x250]
push ecx
push 0
push 0xf003f
push 0
push 0
push 0
push str.InprocServer32
push eax
call ebx
test eax, eax
jne 0x433dad
call fcn.004023e0
mov ecx, eax
call fcn.00474b54
push eax
lea ecx, [ebp - 0x230]
call fcn.00404170
mov eax, dword [ebp - 0x264]
lea ecx, [ebp - 0x230]
push 0xffffffffffffffff
push 0
add eax, 0x48
mov byte [ebp - 4], 2
push eax
call fcn.00405c20
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x433cf1
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x433d10
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x250]
call esi
movups xmm0, xmmword [str.Apartment]
mov eax, dword [0x5ece64]
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x208], eax
lea edx, [ecx + 2]
movups xmmword [ebp - 0x218], xmm0
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x433d60
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push str.ThreadingModel
push dword [ebp - 0x250]
call esi
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 0
cmp eax, 8
jb 0x433dad
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00402ce0
push 0
lea eax, [ebp - 0x25c]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.Programmable
push dword [ebp - 0x24c]
call ebx
test eax, eax
jne 0x43406d
push eax
lea eax, [ebp - 0x258]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.TypeLib
push dword [ebp - 0x24c]
call ebx
test eax, eax
jne 0x433ed0
call fcn.00453c3f
test al, al
je 0x433e21
cmp byte [edi - 0x21], bh
pop edi
inc edx
cmp dword [ebx - 0x3f], esi
sub ah, byte [ebp + 0x63]
inc ebp
and al, 0xb8
je 0x433e1b
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
push 0x5ecfec
lea ecx, [ebp - 0x230]
call fcn.00404170
push str.34E7B5C6_21C6_4A4B_AEFF_CD81A5A6EA57
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 3
call fcn.0040a9f0
push 0x5ed03c
lea ecx, [ebp - 0x230]
call fcn.0040a9f0
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
nop
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x433e70
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x433e90
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x258]
call esi
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.00412820
push 0
lea eax, [ebp - 0x254]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push 0x5ed3bc
push dword [ebp - 0x24c]
call ebx
test eax, eax
jne 0x433f62
call fcn.00453b70
test al, al
je 0x433f18
mov ecx, 0x52c37016
test byte [eax - 0x1b4ddb80], ch
jge 0x433f50
call 0x43a3d031
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov eax, dword [0x5ed1a8]
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x218], eax
lea edx, [ecx + 2]
mov eax, dword [0x5ed1ac]
mov dword [ebp - 0x214], eax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x433f37
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x254]
call esi
call fcn.00453aa1
test al, al
je 0x433f86
je 0x433f77
push ebp
test dword [ebx - 0x75], esi
xchg esi, eax
xchg ebx, eax
mov byte [0xcfc9b954], al
js 0x433fc1
leave
iretd
sub al, 0xd
les ecx, [edx - 0x74750bb9]
pop esp
aad 0xdf
call fcn.00453903
test al, al
je 0x433fa4
rcr byte [edi + ecx*8 - 0x4f], cl
aam 0x83
xchg ebx, eax
cmc
invalid
call fcn.00453a5c
test al, al
je 0x433fbf
iretd
mov eax, dword [ebp - 0x254]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
je 0x433fd2
lodsb al, byte [esi]
std
invalid
push eax
call ebx
mov eax, dword [ebp - 0x258]
test eax, eax
je 0x433fdf
push eax
call ebx
call fcn.0045360c
test al, al
je 0x433ff8
dec esi
fstp qword [ebx]
in eax, 0
invalid
mov eax, dword [ebp - 0x25c]
test eax, eax
je 0x434005
push eax
call ebx
call fcn.00453aa1
test al, al
je 0x43402b
fild dword [ebp + 0x17e034bd]
int 0x46
mov bl, 0x6f
push ebx
jno 0x434018
mov ebx, 0x6306ab95
loope 0x434071
mov es, word [edx + ebp*8 - 0x3e]
pushfd
or dword [esi - 0x47a1743], esp
add dword [eax], eax
call fcn.00453bb5
test al, al
je 0x434052
pop es
adc eax, 0x4cb20b0c
mov edi, 0xfa984581
jmp 0x4340b6
mov eax, dword [ebp - 0x250]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
je 0x434065
push eax
call esi
push dword [ebp - 0x24c]
call esi
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x43408b
invalid
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.00402ce0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0047070c
mov esp, ebp
pop ebp
ret 4
xchg ecx, eax
sub dword [esi], ebx
mov eax, dword fs:[0]
push eax
sub esp, 0x25c
mov eax, dword [0x678390]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
push 0x208
mov dword [ebp - 0x268], eax
lea eax, [ebp - 0x218]
push 0
push eax
mov dword [ebp - 0x264], 0
add byte [eax], al
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x25c], 0
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x258], 0
call fcn.00483520
add esp, 0xc
call fcn.00453bb5
test al, al
je 0x43415d
add byte [eax + eax*8 - 0x4d44ee8c], al
sub dword [ebx + 0x14], ebp
mov ebx, 0x146b29b2
xlatb
inc edx
sbb eax, 0x6de1e33a
pop ebx
js 0x434147
push esp
cmp eax, ebp
pop esp
test dword [ecx], 0x74c08400
pop ds
call fcn.004538be
test al, al
je 0x434185
jnp 0x4341a1
inc esi
dec esi
out dx, al
wait
jne 0x4340fd
fsub dword [ebx + 0x721c99f6]
aam 0xb8
scasb al, byte es:[edi]
popfd
cmp bl, byte [edx + ebp*4 + 0x129f5e7d]
cmp byte [edi + 0x51e80a6a], 0xf5
add dword [eax], eax
call fcn.004536db
test al, al
je 0x4341a4
inc esi
sbb eax, 0x3747605e
add dl, byte [edi - 0x5b2e5e9]
xor esi, dword [ebx - 0x614810c0]
cmp dword [edx - 0x60], edx
imul ebp, dword [edx + 1], 0x33
push edx
mov al, byte [0x33016a6b]
push 1
xor eax, eax
mov dword [ebp - 0x234], 7
push 0x5ecfec
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x238], 0
mov word [ebp - 0x248], ax
call fcn.00402b90
push 0x24
push str.34E7B5C6_21C6_4A4B_AEFF_CD81A5A6EA57
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], 0
call fcn.00405d30
push 1
push 0x5ed03c
lea ecx, [ebp - 0x248]
call fcn.00405d30
call fcn.00453cc9
test al, al
je 0x43421a
rol bh, 0x85
int3
das
test byte [edx - 0x39], cl
adc ah, byte [esi]
test al, 0xd3
fidivr word [ebp + 0x298ca439]
or al, 0x72
jmp 0xfa642aab
call fcn.00453c3f
test al, al
je 0x43423e
outsb dx, byte [esi]
dec esp
push ss
or edx, edi
xor ecx, dword [edx]
rcl ebp, 0xc6
invalid
call fcn.00453bfa
test al, al
je 0x434260
pop eax
sbb bh, ch
sbb eax, 0xafa02b23
std
push ss
test byte ds:[esp + ebx*2 - 0x6246cf36], al
das
rcr dword [eax], 0x97
mov ah, 0x97
cmp dword [ebp - 0x234], 8
lea ecx, [ebp - 0x264]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
lea eax, [ebp - 0x248]
cmovae eax, dword [ebp - 0x248]
push 0
push ecx
push 0
push 0xf003f
push 0
push 0
push 0
push eax
push dword [ebp - 0x268]
call ebx
test eax, eax
jne 0x43481f
call fcn.00453696
test al, al
je 0x4342c4
and eax, 0xe40f89a5
mul byte [edi + 0x72df59eb]
push edi
add eax, 0x38bb6b7a
cmpsd dword [esi], dword es:[edi]
adc ebp, ebp
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
push 0
lea eax, [ebp - 0x250]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push 0x5ed1a8
push dword [ebp - 0x264]
call ebx
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x4347ea
call fcn.00453903
test al, al
je 0x43430e
loope 0x4342b5
push esi
mov esp, 0xd49587cd
cmp dword [0xb22674ca], ecx
arpl word [eax + 0x1f971e8], si
add byte [eax + eax*8 + 0x47f32674], al
call fcn.00453c84
test al, al
je 0x43433d
inc edi
fisttp word [eax]
mov byte [0x8bdb4c54], al
mov dl, 0x90
adc byte [edi - 0xc], 0xf8
and dword [esi + 0x58], esp
movsb byte es:[edi], byte [esi]
les ecx, [eax + ebx*8 - 0x576edd8d]
repz ret 0xb8de
call fcn.00453696
test al, al
je 0x434364
stosb byte es:[edi], al
cwde
aam 0x2e
std
jb 0x434385
mov esp, 0x51e60b24
scasd eax, dword es:[edi]
fucomi st(3)
inc esi
mov bl, byte [eax]
cwde
enter 0x7c0, 0xffffffffffffffdf
mov dword [eax + 0x3fa47813], esp
push 0
lea eax, [ebp - 0x24c]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push 0x5e9b88
push dword [ebp - 0x250]
call ebx
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x4345ee
call fcn.00453b70
test al, al
je 0x4343b5
loope 0x434395
insd dword es:[edi], dx
lodsd eax, dword [esi]
mov edi, 0xf02330c1
mov esi, 0xa5693ce0
sub al, 0x5b
popal
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
push 0
lea eax, [ebp - 0x254]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.win32
push dword [ebp - 0x24c]
call ebx
test eax, eax
jne 0x434486
call fcn.004023e0
mov ecx, eax
call fcn.00474b54
push eax
lea ecx, [ebp - 0x230]
call fcn.00404170
push str.WShell32.dll
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 1
call fcn.0040a9f0
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x434426
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x434440
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x254]
call edi
push dword [ebp - 0x254]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.00412820
push 0
lea eax, [ebp - 0x258]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.win64
push dword [ebp - 0x24c]
call ebx
test eax, eax
jne 0x4345b6
call fcn.00453ae6
test al, al
je 0x4344dd
add edx, dword [esi]
add al, 0xca
push ds
je 0x4344d7
jns 0x4344ff
pushfd
nop
adc byte [eax + 0x4b6c9128], al
sbb dl, dl
insd dword es:[edi], dx
xchg ecx, eax
pop esp
mov eax, 0x7664bf22
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
call fcn.004538be
test al, al
je 0x434506
mov edx, 0x1e092200
jne 0x434477
mov ecx, 0xe1c62b8b
jb 0x434547
loope 0x434565
push ebx
sub bh, dl
daa
imul esp, dword [ecx + 0xc], 0xffffffbc
xchg edi, eax
sub al, 0x1e
mov byte [eax + esi*8 + 0x52], bh
jl 0x4344f1
push edx
mov byte [0xe8d3ac43], al
aad 0xde
cld
dec dword [ebx + 0x642e8c8]
add al, 0
call fcn.004023e0
mov ecx, eax
call fcn.00474b54
push eax
lea ecx, [ebp - 0x230]
call fcn.00404170
push str.WShell64.dll
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 2
call fcn.0040a9f0
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
nop dword [eax]
invalid
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x434550
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
nop word [eax + eax]
invalid
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x434570
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x258]
call edi
push dword [ebp - 0x258]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0
call fcn.00412820
cmp dword [ebp - 0x24c], 0
je 0x4345ee
call fcn.00453c3f
test al, al
je 0x4345de
sal dl, 0x4b
dec ebx
imul esi, dword [esi - 7], 0x5ee95909
mov ebx, dword [edi - 0x56a26f09]
aam 0xd8
lcall 0xb4b5, 0xfffd8b78
std
invalid
push dword [ebp - 0x24c]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call ebx
jmp 0x4345f4
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.0045360c
test al, al
je 0x43460d
push edx
inc esp
insd dword es:[edi], dx
cmpsb byte [esi], byte es:[edi]
push ds
scasb al, byte es:[edi]
jb 0x4345ca
xchg byte [edx], dh
add esi, dword [ebx + ebp*8]
int3
push 0
lea eax, [ebp - 0x25c]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.FLAGS
push dword [ebp - 0x250]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x434687
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x218], 0x30
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x434650
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x25c]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 0x25c]
call ebx
call fcn.00453cc9
test al, al
je 0x4346a3
pop ds
sub ah, cl
inc ebp
loope 0x4346da
salc
sub dword [esp + 0x6a930e83], esi
jl 0x434693
mov esp, 0xe8a9e7a6
xchg edi, eax
cmc
add dword [eax], eax
call fcn.00453c3f
test al, al
je 0x4346c7
ret 0xf38d
call fcn.00453bfa
test al, al
je 0x4346e9
cli
mov byte [0x8c72c0b5], al
not byte [edi]
in al, 0xbb
inc ebp
jle 0x434707
push 0xc
aam 8
mov dword [ecx - 0xaab9af2], 0x6a0d2a
push 0
lea eax, [ebp - 0x260]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.HELPDIR
push dword [ebp - 0x250]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x4347ba
std
invalid
call fcn.004023e0
mov ecx, eax
call fcn.00474b54
push eax
lea ecx, [ebp - 0x230]
call fcn.00404170
cmp dword [ebp - 0x21c], 8
lea ecx, [ebp - 0x230]
lea edx, [ebp - 0x218]
cmovae ecx, dword [ebp - 0x230]
nop word [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx], ax
lea edx, [edx + 2]
test ax, ax
jne 0x434750
lea ecx, [ebp - 0x218]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x434770
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x218]
push eax
push 1
push 0
push 0x5e9978
push dword [ebp - 0x260]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push dword [ebp - 0x260]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call esi
lea ecx, [ebp - 0x230]
call fcn.00412820
jmp 0x4347c0
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.00453696
test al, al
je 0x4347dd
out 0xe2, al
test ch, ah
or eax, 0xf335ced2
push esp
iretd
mov eax, dword [ebp - 0x250]
test eax, eax
je 0x4347ea
push eax
call esi
call fcn.00453765
test al, al
je 0x434812
xor eax, 0x1d821da1
outsd dx, dword [esi]
mov dh, 0x69
test eax, 0x10ac80e2
mov dh, byte [edx - 0x31]
jge 0x43485b
sub ebp, dword [eax]
test byte [edx], bl
sti
mov edi, 0x2673225f
push edi
mov dh, 0x8b
test dword [ebp + edi*8 - 0x3f7a0001], ebx
mov eax, dword [ebp - 0x264]
test eax, eax
je 0x43481f
push eax
call esi
mov eax, dword [ebp - 0x234]
cmp eax, 8
jb 0x43483d
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.00402ce0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0047070c
mov esp, ebp
pop ebp
ret 4
int3