Function at 0x1003a9af
Capabilities:
Query or enumerate registry value

Disassembly:
mov eax, 0x100612da
call fcn.1005fa24
sub esp, 0x130
cmp byte [ebp + 0x18], 0
push ebx
push esi
push edi
mov edi, edx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x20], edi
mov esi, ecx
je 0x1003aa2d
cmp byte [ebp + 0x10], 0
je 0x1003aa04
mov edx, dword [ebp + 0x24]
mov dword [edx], 0
cmp dword [edx], 3
jge 0x1003b2f8
mov esi, dword [ebp + 0x20]
mov ecx, dword [edx]
mov eax, dword [esi]
mov dword [eax + ecx*4], 0x9841b3c6
inc dword [edx]
cmp dword [edx], 3
jl 0x1003a9ed
jmp 0x1003b2f8
mov edx, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x28]
mov eax, dword [ecx]
mov eax, dword [edx]
mov eax, dword [edx]
mov eax, dword [esi]
mov eax, dword [ecx]
mov eax, dword [ecx]
mov eax, dword [edx]
mov eax, dword [ecx]
mov eax, dword [esi]
mov eax, dword [edx]
mov eax, dword [edx]
mov eax, dword [edx]
mov dword [edx], 0x4a126529
jmp 0x1003b2f8
xor ebx, ebx
cmp byte [ebp + 0xc], bl
je 0x1003aa45
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
jmp 0x1003b2f8
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], 0xfffffff6
mov dword [ebp - 0x1c], 0x27d373ee
mov dword [ebp - 0x14], 0x2915
cmp dword [ebp - 0x14], 0x293f
jle 0x1003aaf1
push 0x8b3
push 0x1e99
push 0x1e91
push 0x23b5
push 0x1348
push 0x48a
push 0x12e2
push 0x5e0
push 0x114a
call dword [sym.imp.GDI32.dll_Arc]
xor esi, esi
mov edi, ebx
inc esi
mov eax, ebx
mov dword [ebp - 0x1c], ebx
xor eax, edi
lea ecx, [ebp - 0xf4]
cdq
push edx
push eax
call fcn.10001af4
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003aac1
mov eax, dword [eax]
push eax
call fcn.10048e5f
pop ecx
push ebx
push esi
lea ecx, [ebp - 0xf4]
call fcn.1000330e
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x5800
jl 0x1003aaa7
inc edi
cmp edi, 0x1dc7
jl 0x1003aaa2
mov edi, dword [ebp - 0x20]
jmp 0x1003aaf4
xor esi, esi
inc esi
push 2
lea ecx, [ebp - 0xac]
call fcn.10002fdf
cmp dword [ebp - 0x14], 0x260a
jge 0x1003ab15
push str.alckqssbk_nqqhz_tyjuxp_ucococqop_qzjl_urjndwm
call fcn.10048e5f
pop ecx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x30], ebx
jmp 0x1003ab2b
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x4c], 0x7df2f4a8
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 2
jl 0x1003ab1d
lea eax, [ebp - 0x30]
push eax
push ecx
lea eax, [ebp - 0xac]
push eax
call fcn.1003b328
add esp, 0xc
mov eax, ebx
cmp dword [ebp - 0x48], ebx
je 0x1003ab4e
mov eax, esi
mov dword [ebp - 0x1c], eax
xor edx, edx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x48]
cmp eax, 0x6f3a
mov eax, dword [ebp - 0x48]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x1c], ecx
mov ecx, 0xffff
mov eax, dword [ebp - 0x4c]
sub ecx, eax
mov eax, dword [ebp - 0x1c]
add eax, ecx
cmp eax, 0xfffffffd
mov eax, dword [ebp - 0x48]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x48]
setle dl
imul ecx, edx
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0xac]
lea ecx, [ebp - 0xac]
setle dl
or dword [ebp - 4], 0xffffffff
mov dword [eax + 4], edx
call fcn.1000301b
push edi
lea ecx, [ebp - 0xa0]
call fcn.10002f7d
mov dword [ebp - 4], 3
mov eax, 0xfcf09cc2
mov dword [ebp - 0x18], 0x57fd5464
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x20], 0x50ba1bf2
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x20], 6
mov dword [ebp - 0x20], 0xfffffffd
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x80], 0xfffe
mov dword [ebp - 0x18], ebx
jmp 0x1003ac34
cmp dword [ebp - 0x18], ebx
jne 0x1003ac3a
push 0xf52
xor dl, dl
mov ecx, 0x4a80
call fcn.1003b4f8
dec dword [ebp - 0x18]
pop ecx
cmp dword [ebp - 0x18], 0xffffffef
jle 0x1003ac1a
lea ecx, [ebp - 0x80]
call fcn.1003b309
push ecx
push dword [ebp + 8]
lea ecx, [ebp - 0xa0]
call fcn.1003edb5
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x24], 0x278fa8f9
push 2
call fcn.10002fdf
lea eax, [ebp - 0xbc]
mov byte [ebp - 4], 4
push eax
push ebx
push ecx
mov dword [ebp - 0x1c], 0xffffffff
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x78], 0x4db5
push 0x5ab3
call fcn.1003dec1
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
add esp, 0x10
mov eax, dword [ebp - 0x18]
cmp eax, 0xf545
setg cl
xor edx, edx
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
add ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov eax, dword [ebp - 0x70]
setg dl
xor ecx, ecx
cmp edx, 0xffffffff
setne cl
mov dword [eax], ecx
mov dword [ebp - 0x1c], 3
mov eax, dword [ebp - 0x1c]
sub eax, 4
je 0x1003ad89
mov dword [ebp - 0x20], 0xf4a0
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x20], 0x6c7f05f4
mov dword [ebp - 0x20], 0xfffffff8
mov dword [ebp - 0x20], 0x11fb8eb5
mov dword [ebp - 0x20], esi
push 4
mov dword [ebp - 0x20], 0x26c4f32b
call fcn.10002fdf
push 1
push 0x1f79
push 0x63d3
lea eax, [ebp - 0xdc]
mov byte [ebp - 4], 5
push eax
push ebx
push 0x73a7
push 0x204c
push 0x120
push 0x7a7a
mov dl, 1
lea ecx, [ebp - 0xd8]
call fcn.1003b7c1
add esp, 0x20
lea edx, [ebp - 0x78]
mov ecx, 0x539c
push 0x163c
push 0x2369
push 0x2b95
push 0x7deb
call fcn.1003b50b
add esp, 0x14
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xd8]
call fcn.1000301b
xor esi, esi
inc esi
jmp 0x1003adb1
lea eax, [ebp - 0x70]
mov edx, 0x6e36
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1003dfa6
pop ecx
pop ecx
mov dword [ebp - 0x24], ebx
jmp 0x1003adac
xor cl, cl
call fcn.1003b63d
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x1003ada2
mov dword [ebp - 0x14], ebx
jmp 0x1003adf2
mov dword [ebp - 0x1c], 0x8f43
lea edx, [ebp + 0x1b]
mov byte [ebp + 0x1b], bl
call fcn.1003b34a
mov dword [ebp - 0x24], ebx
jmp 0x1003adea
mov dword [ebp - 0x1c], 0xa44f34d8
xor ecx, ecx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
cmp eax, esi
mov eax, dword [ebp - 0x70]
setle cl
mov dword [eax + edx*4], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], esi
jle 0x1003adcd
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x1003adb6
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 3
call fcn.1000301b
push ecx
push 0x2282
lea eax, [ebp - 0x38]
push esi
push eax
lea edx, [ebp - 0xa0]
call fcn.1003d89d
mov dword [ebp - 0x18], 4
add esp, 0x10
mov dword [ebp - 0x14], ebx
jmp 0x1003ae36
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x40], 8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x1003ae28
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], ebx
jl 0x1003aea6
xor esi, esi
inc esi
push 2
lea ecx, [ebp - 0xb8]
call fcn.10002fdf
mov byte [ebp - 4], 6
mov dword [ebp - 0x14], ebx
jmp 0x1003ae6c
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xb8]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1003ae5d
mov edi, dword [ebp - 0xb8]
mov dword [edi + 4], ebx
push ecx
lea edx, [ebp - 0x29]
mov byte [ebp - 0x29], bl
call fcn.1003e0ee
dec dword [edi + 4]
pop ecx
jns 0x1003ae7b
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 3
call fcn.1000301b
dec dword [ebp - 0x18]
jns 0x1003ae47
cmp dword [ebp - 0x18], ebx
je 0x1003aeba
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x1003aeb7
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor dl, dl
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x18], 1
push eax
push 0x3b10
call fcn.1003ddb2
add esp, 0xc
mov dword [ebp - 0x14], ebx
jmp 0x1003aef4
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x60], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1003aee6
mov dword [ebp - 0x60], ebx
jmp 0x1003afdb
push ecx
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x3eb905d0
push eax
push ebx
mov dword [ebp - 0x18], ebx
mov edx, 0x79e3
push 0x4d43
call fcn.1003d89d
add esp, 0x10
mov dword [ebp - 0x28], ebx
jmp 0x1003afce
mov dword [ebp - 0x14], 0x9dade661
xor edx, edx
mov dword [ebp - 0x1c], 0xfffffff6
mov dword [ebp - 0x20], 0xedda5659
mov dword [ebp - 0x18], 0x1c71
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x28]
cmp eax, ecx
mov eax, dword [ebp - 0x14]
setge dl
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x28]
add edx, eax
mov eax, dword [ebp - 0x18]
cmp eax, 0x756
push 5
setge cl
imul ecx, edx
pop eax
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 0xc07c2076
sbb ecx, ecx
inc ecx
sub eax, ecx
mov dword [ebp - 0x1c], eax
imul eax, dword [ebp - 0x5c], 5
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jbe 0x1003af94
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], 0x213072c0
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x14]
sub edx, eax
cmp dword [ebp - 0x18], 6
sbb eax, eax
xor ecx, ecx
neg eax
cmp edx, eax
setl cl
xor edx, edx
cmp ecx, 0x2e71
setg dl
xor eax, eax
cmp edx, 0xe213
setg al
mov dword [ebp - 0x20], eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x2e
jle 0x1003af2c
inc dword [ebp - 0x60]
cmp dword [ebp - 0x60], 0xc
jl 0x1003af02
xor esi, esi
inc esi
cmp dword [ebp - 0x38], 0xffffffff
je 0x1003b11d
mov dword [ebp - 0x18], 0x604
cmp dword [ebp - 0x18], 0x922
jle 0x1003b064
mov edi, ebx
mov ecx, ebx
mov dword [ebp - 0x1c], ebx
mov eax, ebx
mov dword [ebp - 0x14], ebx
and eax, ecx
lea ecx, [ebp - 0x124]
xor eax, edi
cdq
push edx
push eax
call fcn.10001af4
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003b02a
mov eax, dword [eax]
push eax
call fcn.10048e5f
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x124]
call fcn.1000330e
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x7f9a
jl 0x1003b00e
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, 0x4d0b
jl 0x1003b009
inc edi
cmp edi, 0x6629
jl 0x1003b004
cmp dword [ebp - 0x18], 0x4c2
jge 0x1003b078
push str.srs_zzteryxkv_yrost_ntqwx_cmmnrrlb
call fcn.10048e5f
pop ecx
push esi
push 0x4572
push 0x4ee2
push 0x3fe9
push ebx
push 0x68bf
mov dword [ebp - 4], 3
xor dl, dl
push 0x3543
mov dword [ebp - 0x88], ebx
mov ecx, 0x5517
mov dword [ebp - 0x74], 0xa754320e
push 0x3e43
mov dword [ebp - 0x64], ebx
push 0x1b3b
mov dword [ebp - 0x84], 0xffffffff
call fcn.1003b7c1
add esp, 0x24
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x64]
push eax
push ecx
push ecx
push ebx
lea ecx, [ebp - 0x88]
call fcn.1003c65f
add esp, 0x18
lea eax, [ebp - 0x10c]
lea ecx, [ebp - 0xa0]
push 0xffffffffffffffff
push dword [ebp - 0x38]
push eax
call fcn.1003ee3b
push eax
lea ecx, [ebp - 0xa0]
call fcn.100398a8
push ebx
push esi
lea ecx, [ebp - 0x10c]
call fcn.10003819
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x34], 0x90a23371
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x3c]
jne 0x1003b165
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x7c], esi
push eax
push ebx
lea eax, [ebp - 0x34]
mov dword [ebp - 0x44], 0xa8628405
push eax
lea eax, [ebp - 0x7c]
mov edx, 0x24ea
push eax
lea eax, [ebp - 0x44]
mov ecx, 0x42ca
push eax
call fcn.1003e16c
add esp, 0x14
jmp 0x1003b235
mov dword [ebp - 0x20], 0x568a
cmp dword [ebp - 0x20], 0x5699
jle 0x1003b1d5
mov ecx, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x1c], ebx
mov edi, ebx
mov eax, ebx
mov dword [ebp - 0x54], 0x4b3a
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], eax
and eax, ebx
and eax, ecx
mov ecx, 0x1007cff8
cdq
push edx
push eax
call fcn.10002e68
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
add eax, edi
dec dword [ebp - 0x54]
mov dword [ebp - 0x18], eax
jne 0x1003b18e
inc edi
push 0
pop ebx
cmp edi, 0x36fe
jl 0x1003b17f
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp eax, 0x7640
jl 0x1003b17d
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, 0x2663
jl 0x1003b17a
mov dword [ebp - 0x50], 0xc3b03c3f
mov byte [ebp - 4], 9
cmp dword [ebp - 0x20], 0x534b
jge 0x1003b219
mov edx, str.knozxnge_ttxbkkuy_wubb_wnagjbier_gdn_ykn_cpcjf_slci_pwrfq
mov ecx, 0x1007cff8
call fcn.100050b8
jmp 0x1003b219
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 3
push eax
push ecx
push ecx
lea eax, [ebp - 0x3c]
push eax
lea edx, [ebp - 0x50]
call fcn.1003a97c
add esp, 0x10
mov dword [ebp - 0x20], 0x7c41
cmp dword [ebp - 0x20], 0x7f25
jle 0x1003b2d5
mov edi, ebx
mov dword [ebp - 0x34], ebx
mov eax, ebx
mov dword [ebp + 0x18], ebx
mov edx, edi
mov dword [ebp - 0x50], ebx
mov ecx, eax
mov edi, ebx
sar edx, cl
mov dword [ebp - 0x44], edx
mov eax, edi
lea ecx, [ebp - 0x13c]
xor eax, edx
cdq
push edx
push eax
call fcn.10001af4
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003b27d
mov eax, dword [eax]
push eax
call fcn.10048e5f
pop ecx
push ebx
push esi
lea ecx, [ebp - 0x13c]
call fcn.1000330e
mov edx, dword [ebp - 0x44]
inc edi
cmp edi, 0x4351
jl 0x1003b261
mov eax, dword [ebp + 0x18]
mov edi, dword [ebp - 0x34]
inc eax
mov dword [ebp + 0x18], eax
cmp eax, 0x3acd
jl 0x1003b253
inc edi
mov dword [ebp - 0x34], edi
cmp edi, 0x1a43
jl 0x1003b24e
push 0xe2c
push ebx
push 0xfcf
push 0x1328
push 0xeff
call dword [sym.imp.GDI32.dll_ExtFloodFill]
mov ecx, dword [ebp + 0x1c]
lea eax, [ebp - 0xa0]
cmp ecx, eax
je 0x1003b2eb
push 0xffffffffffffffff
push ebx
push eax
call fcn.10003352
push ebx
push esi
lea ecx, [ebp - 0xa0]
call fcn.10003819
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret