Function at 0x10044f4d
Capabilities:
Delete registry key

Disassembly:
mov eax, 0x10087c39
call fcn.100862f0
sub esp, 0x78
push ebx
push esi
mov dword [ebp - 0x20], 0xffffffff
xor ebx, ebx
push edi
mov dword [ebp - 0x28], 7
mov edi, ecx
mov dword [ebp - 0x18], ebx
jmp 0x10044f82
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x60], 0xdc85
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10044f74
push 3
mov dword [ebp - 0x18], ebx
pop esi
jmp 0x10044f9a
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x50], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10044f90
mov dword [ebp - 0x20], ebx
jmp 0x10045196
push dword [ebp - 0x2c]
movdqa xmm0, xmmword [0x10008bc0]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0x38], ebx
push eax
push ebx
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], ebx
movdqu xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x30], ebx
call fcn.1001610b
mov dword [ebp - 4], ebx
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x1c], 0x279a
mov dword [ebp - 0x24], 0xc6a3
mov dword [ebp - 0x18], 0xbfa08552
mov dword [ebp - 0x18], 0x2b5d06de
mov dword [eax], esi
mov dword [ebp - 0x18], 0x1d962ee6
mov dword [ebp - 0x18], ebx
jmp 0x1004505e
xor ecx, ecx
inc ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x24], 0xffffffff
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x60]
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
test eax, eax
je 0x10045028
mov edx, ecx
cmp dword [ebp - 0x1c], ebx
jne 0x1004502a
mov edx, ebx
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x60]
cmp edx, eax
setl cl
sub ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0xfffffff8
setge al
xor edx, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
setle dl
mov dword [ebp - 0x24], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jle 0x10045001
mov dword [ebp - 0x18], ebx
jmp 0x1004508d
mov dword [ebp - 0x24], ebx
jmp 0x10045077
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x2c], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 1
jl 0x1004506d
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x38]
cmp dword [eax], ebx
jne 0x10045095
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jle 0x10045068
mov eax, dword [ebp - 0x38]
dec dword [eax]
jns 0x10044ff5
mov dword [ebp - 0x1c], ebx
jmp 0x1004517e
mov dword [ebp - 0x24], 0xfffffff9
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x24], 4
mov dword [ebp - 0x24], 0x8a3d3555
push 2
call fcn.10014bbc
mov dword [ebp - 0x24], ebx
jmp 0x100450d9
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
mov dword [eax + ecx*4], 0x349b8ae
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x100450c9
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + eax*4 - 0x60]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x60], ecx
mov dword [ebp - 0x24], ebx
cmp dword [ebp - 0x24], esi
jg 0x10045173
mov esi, dword [ebp - 0x38]
mov dword [ebp - 0x18], 0x70bb1dce
xor edx, edx
mov dword [ebp - 0x18], 0xb818e961
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + eax*4 - 0x60]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x60]
cmp ecx, eax
setge dl
mov dword [esi + 8], edx
test edx, edx
je 0x10045131
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x60]
xor eax, eax
inc eax
jmp 0x10045133
mov eax, ebx
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 6
jne 0x10045146
cmp dword [ebp - 0x58], ebx
je 0x10045146
xor edx, edx
inc edx
jmp 0x10045148
mov edx, ebx
mov eax, dword [ebp - 0x20]
cmp edx, 0xb566e66b
mov ecx, dword [ebp + eax*4 - 0x60]
sbb eax, eax
neg eax
imul eax, eax, 0x7c0c
add ecx, eax
mov dword [ebp - 0x18], ecx
dec dword [ebp - 0x28]
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jle 0x100450f8
push 3
pop esi
lea ecx, [ebp - 0x44]
call fcn.100153ad
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x100450a5
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38]
call fcn.100153ad
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jle 0x10044fa7
push edi
push 0x2092
push 1
call fcn.10041606
mov dword [ebp - 0x20], 0xffffffff
add esp, 0xc
mov dword [ebp - 0x28], 0xfffffff9
mov dword [ebp - 0x28], 0x98aac1e0
mov dword [ebp - 0x28], 0x72d50fa8
mov dword [ebp - 0x20], ebx
jmp 0x1004526d
mov dword [ebp - 0x24], 0xfffffffb
xor edx, edx
mov dword [ebp - 0x1c], 0x4039ee49
mov dword [ebp - 0x28], 0x866193f
mov dword [ebp - 0x28], 0xe91c8413
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setge dl
xor ecx, ecx
cmp eax, 0xf0a9
setg cl
xor eax, eax
cmp ecx, edx
setl al
sub eax, dword [ebp - 0x24]
inc eax
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
je 0x1004522a
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x24]
neg eax
sbb eax, eax
xor edx, edx
neg eax
imul ecx, eax, 0x6c50
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setle dl
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffe7
jg 0x100451d3
push edi
call fcn.10029c41
mov dword [ebp - 0x70], ebx
mov esi, eax
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x24], 0xdf98a59c
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
pop ecx
je 0x100452a4
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov dword [ebp - 0x24], ebx
jmp 0x100452b7
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x70], 0x633efc07
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x100452a9
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret