Function at 0x37f80769
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1144
call fcn.37fad71e
mov eax, dword [0x37f7d24c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
and dword [ebp - 0x1118], 0
and dword [ebp - 0x1114], 0
push ebx
push esi
mov dword [ebp - 0x1110], eax
mov eax, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x110c], ecx
mov dword [ebp - 0x1140], eax
jmp 0x37f80ca9
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiA]
push 0x37f614cc
push edi
mov dword [ebp - 0x1124], 1
call esi
mov ebx, eax
neg ebx
push 0x37f614e0
sbb ebx, ebx
push edi
inc ebx
call esi
test eax, eax
je 0x37f807e4
test ebx, ebx
je 0x37f808a7
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e85c
mov esi, eax
test esi, esi
jl 0x37f80d1c
cmp dword [ebp + 0x10], 0
je 0x37f808a7
push 0x5c
xor esi, esi
push edi
mov dword [ebp - 0x1120], esi
mov dword [ebp - 0x111c], esi
call fcn.37f7e7ed
test eax, eax
jne 0x37f80cc0
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e946
test eax, eax
je 0x37f8085c
mov eax, dword [ebp - 0x1110]
push edi
lea ecx, [ebp - 0x1120]
mov dword [ebp - 0x1120], eax
mov dword [ebp - 0x111c], esi
call fcn.37f7ed7c
mov dword [ebp - 0x1120], esi
mov dword [ebp - 0x111c], esi
cmp ebx, esi
je 0x37f8089c
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e85c
mov esi, eax
test esi, esi
jl 0x37f80cd2
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e9aa
lea ecx, [ebp - 0x1120]
mov esi, eax
call fcn.37f7e498
test esi, esi
jl 0x37f80d1c
jmp 0x37f80c6f
lea ecx, [ebp - 0x1120]
call fcn.37f7e498
push 0x37f614d4
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x37f808d3
mov ecx, dword [ebp - 0x110c]
and dword [ebp - 0x1124], eax
push edi
call fcn.37f7e85c
mov esi, eax
test esi, esi
jl 0x37f80d1c
push 0x37f614ec
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x37f809ed
mov ecx, dword [ebp - 0x110c]
lea eax, [ebp - 0x1108]
push eax
call fcn.37f7e85c
mov esi, eax
xor ebx, ebx
cmp esi, ebx
jl 0x37f80d1c
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e85c
mov esi, eax
cmp esi, ebx
jl 0x37f80d1c
cmp byte [edi], 0x3d
jne 0x37f80ccb
cmp dword [ebp + 0x10], ebx
je 0x37f80975
mov eax, dword [ebp - 0x1110]
mov ecx, dword [ebp - 0x110c]
mov dword [ebp - 0x113c], eax
push edi
lea eax, [ebp - 0x1108]
push eax
lea eax, [ebp - 0x113c]
push eax
mov dword [ebp - 0x1138], ebx
call fcn.37f803ec
lea ecx, [ebp - 0x113c]
mov esi, eax
mov dword [ebp - 0x113c], ebx
mov dword [ebp - 0x1138], ebx
call fcn.37f7e498
cmp esi, ebx
jmp 0x37f80891
cmp dword [ebp + 0x14], ebx
jne 0x37f809d8
cmp dword [ebp - 0x1124], ebx
je 0x37f809d8
push 0x20006
push ebx
push dword [ebp - 0x1110]
lea ecx, [ebp - 0x112c]
mov dword [ebp - 0x112c], ebx
mov dword [ebp - 0x1128], ebx
call fcn.37f7e50d
cmp eax, ebx
jne 0x37f80cda
lea eax, [ebp - 0x1108]
push eax
push dword [ebp - 0x112c]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
cmp eax, ebx
je 0x37f809cd
cmp eax, 2
jne 0x37f80cda
lea ecx, [ebp - 0x112c]
call fcn.37f7e498
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e9aa
mov esi, eax
cmp esi, ebx
jmp 0x37f80cb3
push 0x5c
push edi
call fcn.37f7e7ed
test eax, eax
jne 0x37f80ccb
cmp dword [ebp + 0x10], eax
je 0x37f80a9b
mov esi, 0x2001f
push esi
push edi
push dword [ebp - 0x1110]
lea ecx, [ebp - 0x1118]
call fcn.37f7e50d
test eax, eax
je 0x37f80a60
push 0x20019
push edi
push dword [ebp - 0x1110]
lea ecx, [ebp - 0x1118]
call fcn.37f7e50d
test eax, eax
je 0x37f80a60
xor ebx, ebx
push ebx
push ebx
push esi
push ebx
push ebx
push edi
push dword [ebp - 0x1110]
lea ecx, [ebp - 0x1118]
call fcn.37f7e4b3
mov esi, eax
cmp esi, ebx
jne 0x37f80ce8
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e85c
mov esi, eax
test esi, esi
jl 0x37f80d1c
cmp byte [edi], 0x3d
jne 0x37f80c6f
mov ecx, dword [ebp - 0x110c]
push edi
push 0
lea eax, [ebp - 0x1118]
push eax
call fcn.37f803ec
mov esi, eax
jmp 0x37f8088f
cmp dword [ebp + 0x14], 0
jne 0x37f80abc
push 0x20019
push edi
push dword [ebp - 0x1110]
lea ecx, [ebp - 0x1118]
call fcn.37f7e50d
mov ebx, eax
jmp 0x37f80abf
push 2
pop ebx
test ebx, ebx
je 0x37f80aca
mov dword [ebp + 0x14], 1
push 0xffffffffffffffff
push edi
lea eax, [ebp - 0x108]
push 0x104
push eax
call dword [sym.imp.MSVCR90.dll_strncpy_s]
add esp, 0x10
push eax
call fcn.37f7e23b
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e85c
mov esi, eax
test esi, esi
jl 0x37f80d1c
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e9aa
mov esi, eax
test esi, esi
jl 0x37f80d1c
cmp byte [edi], 0x7b
jne 0x37f80b62
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 1
jne 0x37f80b62
push dword [ebp + 0x14]
mov ecx, dword [ebp - 0x110c]
push 0
push dword [ebp - 0x1118]
push edi
call fcn.37f80769
mov esi, eax
test esi, esi
jge 0x37f80b4c
cmp dword [ebp + 0x14], 0
je 0x37f80d1c
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e85c
mov esi, eax
test esi, esi
jl 0x37f80d1c
mov eax, dword [ebp - 0x1140]
mov dword [ebp + 0x14], eax
cmp ebx, 2
je 0x37f80cb5
test ebx, ebx
je 0x37f80b8d
test eax, eax
jne 0x37f80cb5
push ebx
call fcn.37f7e37f
mov esi, eax
jmp 0x37f80d1c
test eax, eax
je 0x37f80be4
push dword [ebp - 0x1118]
mov ecx, dword [ebp - 0x110c]
call fcn.37f7e975
test eax, eax
je 0x37f80be4
mov ecx, dword [ebp - 0x110c]
lea eax, [ebp - 0x108]
push eax
call fcn.37f7e946
test eax, eax
je 0x37f80cb5
cmp dword [ebp - 0x1124], 0
je 0x37f80cb5
lea eax, [ebp - 0x108]
push eax
lea ecx, [ebp - 0x1118]
call fcn.37f7ed7c
jmp 0x37f80cb5
push dword [ebp - 0x1118]
mov ecx, dword [ebp - 0x110c]
call fcn.37f7e975
lea ecx, [ebp - 0x1118]
mov dword [ebp - 0x1144], eax
call fcn.37f7e498
mov ebx, eax
xor eax, eax
cmp ebx, eax
jne 0x37f80cfb
cmp dword [ebp - 0x1124], eax
je 0x37f80cb5
cmp dword [ebp - 0x1144], eax
jne 0x37f80cb5
mov ecx, dword [ebp - 0x1110]
mov dword [ebp - 0x1130], eax
lea eax, [ebp - 0x108]
mov dword [ebp - 0x1134], ecx
push eax
lea ecx, [ebp - 0x1134]
call fcn.37f7e43b
and dword [ebp - 0x1134], 0
and dword [ebp - 0x1130], 0
test eax, eax
jne 0x37f80d09
lea ecx, [ebp - 0x1134]
call fcn.37f7e498
cmp dword [ebp + 0x10], 0
je 0x37f80cb5
cmp byte [edi], 0x7b
jne 0x37f80cb5
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 1
jne 0x37f80cb5
mov ecx, dword [ebp - 0x110c]
push 0
push dword [ebp + 0x10]
push dword [ebp - 0x1118]
push edi
call fcn.37f80769
mov esi, eax
test esi, esi
jl 0x37f80d1c
mov ecx, dword [ebp - 0x110c]
push edi
call fcn.37f7e85c
mov esi, eax
test esi, esi
jl 0x37f80d1c
cmp byte [edi], 0x7d
jne 0x37f807b1
jmp 0x37f80d1c
lea ecx, [ebp - 0x1120]
call fcn.37f7e498
mov esi, 0x80020009
jmp 0x37f80d1c
lea ecx, [ebp - 0x1120]
jmp 0x37f80d17
push eax
call fcn.37f7e37f
lea ecx, [ebp - 0x112c]
jmp 0x37f80d15
lea ecx, [ebp - 0x1118]
call fcn.37f7e498
push esi
call fcn.37f7e37f
jmp 0x37f80d29
lea ecx, [ebp - 0x1118]
call fcn.37f7e498
push ebx
jmp 0x37f80cf4
push eax
call fcn.37f7e37f
lea ecx, [ebp - 0x1134]
mov esi, eax
call fcn.37f7e498
lea ecx, [ebp - 0x1118]
call fcn.37f7e498
mov eax, esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.37facac9
leave
ret 0x10