Function at 0x40aba0
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x419488
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x64], 1
push edx
mov edx, 0x36db0450
and edx, eax
and edx, esp
add edx, eax
nop
pop edx
lea ecx, [ebp - 0x90]
call fcn.0040f290
mov dword [ebp - 4], 0
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x68], esp
push 0x41e384
call fcn.0040f0c0
mov dword [ebp - 0x6c], eax
push 0x41e348
lea eax, [ebp - 0x40]
push eax
call fcn.00407a00
add esp, 0x20
mov dword [ebp - 0x70], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.0040f290
mov byte [ebp - 4], 2
mov dword [ebp - 0x10], 0
jmp 0x40ac45
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x40]
call fcn.00417520
cmp dword [ebp - 0x10], eax
jae 0x40b3f9
cmp dword [ebp - 0x10], 2
jne 0x40ac7b
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 4
jne 0x40aca0
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 6
jne 0x40acc5
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 9
jne 0x40acea
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0xc
jne 0x40ad0f
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0xe
jne 0x40ad34
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x12
jne 0x40ad59
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x16
jne 0x40ad7e
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x17
jne 0x40ada3
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x1b
jne 0x40adc8
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x1d
jne 0x40aded
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x20
jne 0x40ae12
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x21
jne 0x40ae37
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x23
jne 0x40ae5c
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x26
jne 0x40ae81
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x28
jne 0x40aeb4
push ebp
xor ebp, edx
mov ebp, 0x43af653f
sub ebp, ebx
sbb ebp, edx
nop
pop ebp
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x29
jne 0x40aee7
push ebx
add ebx, edi
mov ebx, 0x593c180a
sbb ebx, eax
or ebx, edx
nop
pop ebx
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x2a
jne 0x40af1a
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push ebp
mov ebp, 0x6bc350b0
add ebp, esp
mov ebp, 0x27c94b70
pop ebp
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x2f
jne 0x40af4d
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push eax
and eax, esi
mov eax, 0x6ca5029f
mov eax, 0x3f7c5331
pop eax
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x30
jne 0x40af80
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push ebp
sbb ebp, esp
mov ebp, 0x58225121
or ebp, esp
or ebp, edx
nop
pop ebp
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x31
jne 0x40afb3
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push eax
sub eax, eax
mov eax, 0x3e8f1329
mov eax, 0x378354ff
pop eax
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x32
jne 0x40afe6
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push ebp
sbb ebp, ecx
sbb ebp, edi
and ebp, esi
mov ebp, 0x4719285e
nop
pop ebp
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x33
jne 0x40b019
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push ecx
mov ecx, 0xe15019f
xor ecx, edi
or ecx, eax
sbb ecx, ebp
nop
pop ecx
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x35
jne 0x40b04c
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push edi
and edi, esi
and edi, edi
mov edi, 0x29275fe1
sub edi, esp
nop
pop edi
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x39
jne 0x40b07f
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push esi
xor esi, edi
or esi, esi
mov esi, 0xb981117
sbb esi, esp
nop
pop esi
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x3b
jne 0x40b0b2
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push ebx
mov ebx, 0x1e466392
xor ebx, ebx
or ebx, edx
or ebx, edx
nop
pop ebx
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x41
jne 0x40b0e5
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push edx
mov edx, 0x2cf539fe
sbb edx, eax
mov edx, 0x36861f7
pop edx
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x46
jne 0x40b10a
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x48
jne 0x40b12f
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x4a
jne 0x40b162
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push ecx
mov ecx, 0xeaa6935
xor ecx, esp
mov ecx, 0x64c106ee
pop ecx
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x4b
jne 0x40b187
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x4e
jne 0x40b1ba
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push ebp
mov ebp, 0x285d017c
sub ebp, ecx
mov ebp, 0x61da7f78
pop ebp
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x52
jne 0x40b1ed
push edx
mov edx, 0x2770ede
and edx, esp
sub edx, esp
or edx, esi
nop
pop edx
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x54
jne 0x40b212
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x56
jne 0x40b245
push ebx
and ebx, eax
sbb ebx, ecx
mov ebx, 0x224b3ccf
or ebx, edi
nop
pop ebx
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x58
jne 0x40b26a
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x5a
jne 0x40b28f
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x5b
jne 0x40b2d0
push ecx
sbb ecx, edx
add ecx, eax
mov ecx, 0x1052db2
xor ecx, ecx
nop
pop ecx
push eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
pop eax
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x5f
jne 0x40b2f5
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x63
jne 0x40b328
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
push esi
mov esi, 0x1cbb48eb
mov esi, 0x38987a16
xor esi, esi
pop esi
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x64
jne 0x40b34d
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x66
jne 0x40b372
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x6a
jne 0x40b394
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x6e
jne 0x40b3b6
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
cmp dword [ebp - 0x10], 0x6f
jne 0x40b3e6
push eax
mov eax, 0x5f270c76
mov eax, 0x62a00361
sub eax, esi
pop eax
mov edx, dword [ebp - 0x10]
push edx
lea ecx, [ebp - 0x40]
call fcn.00410180
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x28]
call fcn.00410470
jmp 0x40b3f4
push esi
sub esi, edi
mov esi, 0x27b25009
mov esi, 0x3fb6265a
pop esi
jmp 0x40ac3c
cmp dword [ebp + 0xc], 0
jne 0x40b41e
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x90]
call fcn.0040ff60
push edx
mov edx, 0xf772ab7
and edx, ecx
mov edx, 0x7d3e5247
pop edx
jmp 0x40b461
push 0x41a498
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0xc0]
push ecx
call fcn.0040c930
add esp, 0xc
mov dword [ebp - 0x5c], eax
mov edx, dword [ebp - 0x5c]
push edx
lea ecx, [ebp - 0x90]
call fcn.0040fe70
lea ecx, [ebp - 0xc0]
call fcn.0040fa10
push ecx
mov ecx, 0x6bd9775c
xor ecx, esp
and ecx, edx
sub ecx, edx
nop
pop ecx
lea ecx, [ebp - 0x4d]
call fcn.0040ef70
push eax
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x90]
call fcn.00414410
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x78]
push edx
lea ecx, [ebp - 0x90]
call fcn.00413e10
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xa8]
call fcn.0040c590
lea ecx, [ebp - 0x44]
push ecx
push 0x20006
push 0
lea ecx, [ebp - 0xa8]
call fcn.00413f30
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [ebp - 0x48], eax
push ebp
xor ebp, esp
sbb ebp, edi
sub ebp, eax
mov ebp, 0x59c38e2
nop
pop ebp
cmp dword [ebp - 0x48], 0
jne 0x40b4db
mov dword [ebp - 0x54], 1
jmp 0x40b4e2
mov dword [ebp - 0x54], 0
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x4c], edx
cmp dword [ebp - 0x4c], 0
je 0x40b51b
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x44]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jne 0x40b50e
mov dword [ebp - 0x58], 1
jmp 0x40b515
mov dword [ebp - 0x58], 0
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x4c], edx
push eax
xor eax, edx
mov eax, 0x23833e85
and eax, edx
sub eax, eax
nop
pop eax
push edx
mov edx, 0x5ee42de6
mov edx, 0x1b7d1046
or edx, ecx
pop edx
cmp dword [ebp - 0x44], 0
je 0x40b54e
mov eax, dword [ebp - 0x44]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x44], 0
push edi
or edi, edi
and edi, ecx
mov edi, 0x716b0135
xor edi, edi
nop
pop edi
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x60], ecx
lea ecx, [ebp - 0xa8]
call fcn.0040fa50
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.0040fa10
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x40]
call fcn.0040fa10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x90]
call fcn.0040fa10
mov eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret