Function at 0x10117d50
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd4
mov eax, dword [0x10250150]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0xcc], ecx
lea ecx, [ebp - 0x88]
push str.NoBrowserSaveAs
call fcn.10004700
push 0x2766
lea ecx, [ebp - 0x84]
call fcn.10004700
push 0x9cb1
lea ecx, [ebp - 0x80]
call fcn.10004700
push str.NoBrowserClose
lea ecx, [ebp - 0x7c]
call fcn.10004700
push 0x2764
lea ecx, [ebp - 0x78]
call fcn.10004700
push 0x9cb2
lea ecx, [ebp - 0x74]
call fcn.10004700
push str.NoFileNew
lea ecx, [ebp - 0x70]
call fcn.10004700
push 0x2769
lea ecx, [ebp - 0x6c]
call fcn.10004700
push 0x9cb3
lea ecx, [ebp - 0x68]
call fcn.10004700
push str.NoFileOpen
lea ecx, [ebp - 0x64]
call fcn.10004700
push 0x2767
lea ecx, [ebp - 0x60]
call fcn.10004700
push 0x9cb4
lea ecx, [ebp - 0x5c]
call fcn.10004700
push str.NoTheaterMode
lea ecx, [ebp - 0x58]
call fcn.10004700
push 0x2763
lea ecx, [ebp - 0x54]
call fcn.10004700
push 0x9cb5
lea ecx, [ebp - 0x50]
call fcn.10004700
push str.NoViewSource
lea ecx, [ebp - 0x4c]
call fcn.10004700
push 0x276b
lea ecx, [ebp - 0x48]
call fcn.10004700
push 0x9cb6
lea ecx, [ebp - 0x44]
call fcn.10004700
push str.NoFavorites
lea ecx, [ebp - 0x40]
call fcn.10004700
push 0x2768
lea ecx, [ebp - 0x3c]
call fcn.10004700
push 0x9cb7
lea ecx, [ebp - 0x38]
call fcn.10004700
push str.NoBrowserOptions
lea ecx, [ebp - 0x34]
call fcn.10004700
push 0x2761
lea ecx, [ebp - 0x30]
call fcn.10004700
push 0x9cb8
lea ecx, [ebp - 0x2c]
call fcn.10004700
push str.NoHelpItemTipOfTheDay
lea ecx, [ebp - 0x28]
call fcn.10004700
push 0x276a
lea ecx, [ebp - 0x24]
call fcn.10004700
push 0x9cb9
lea ecx, [ebp - 0x20]
call fcn.10004700
push str.NoHelpItemNetscapeHelp
lea ecx, [ebp - 0x1c]
call fcn.10004700
push 0x2762
lea ecx, [ebp - 0x18]
call fcn.10004700
push 0x9cba
lea ecx, [ebp - 0x14]
call fcn.10004700
push str.NoHelpItemSendFeedback
lea ecx, [ebp - 0x10]
call fcn.10004700
push 0x2765
lea ecx, [ebp - 0xc]
call fcn.10004700
push 0x9cbb
lea ecx, [ebp - 8]
call fcn.10004700
mov esi, dword [sym.imp.SHLWAPI.dll_SHGetValueW]
lea ebx, [ebp - 0x84]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], ebx
jmp 0x10117f40
mov edi, dword [ebx - 4]
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xb8]
mov dword [ebp - 0xc8], 4
push eax
lea eax, [ebp - 0xc8]
mov dword [ebp - 0xb8], 0
push eax
push edi
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
push SysReAllocString
mov dword [ebp - 0xc4], 4
call esi
test eax, eax
jne 0x101182f9
cmp dword [ebp - 0xb8], eax
je 0x101182f9
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa8], eax
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa4], eax
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
push 0x3a
add eax, 0x10
mov dword [ebp - 0xac], SysReAllocString
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0xa0], eax
call fcn.10004050
mov esi, dword [ebp - 0xa4]
lea ecx, [edi - 0x10]
add esi, 0xfffffff0
cmp ecx, esi
je 0x10118068
cmp dword [esi + 0xc], 0
lea ebx, [esi + 0xc]
jl 0x10118053
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x10118053
push ecx
call fcn.10004ba0
add esp, 4
mov edi, eax
or ecx, 0xffffffff
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x10118048
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
lea eax, [edi + 0x10]
mov dword [ebp - 0xa4], eax
jmp 0x10118062
push dword [edi - 0xc]
lea ecx, [ebp - 0xa4]
push edi
call fcn.10004050
mov ebx, dword [ebp - 0x8c]
mov ecx, dword [ebx]
mov edi, dword [ebp - 0xa0]
lea edx, [ecx - 0x10]
lea esi, [edi - 0x10]
cmp edx, esi
je 0x101180d2
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x101180bd
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x101180bd
push edx
call fcn.10004ba0
add esp, 4
mov dword [ebp - 0xb4], eax
or ecx, 0xffffffff
lock xadd dword [edi], ecx
dec ecx
test ecx, ecx
jg 0x101180b2
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0xb4]
lea edi, [eax + 0x10]
mov dword [ebp - 0xa0], edi
jmp 0x101180d2
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0xa0]
call fcn.10004050
mov edi, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa4]
push 0x20019
push 4
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x9c], 0
mov esi, esp
mov dword [ebp - 0x98], 0
push eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0xb4], eax
call fcn.10004ba0
add eax, 0x10
mov dword [esi], eax
mov esi, esp
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
push eax
mov dword [ebp - 0xc0], eax
call fcn.10004ba0
add esp, 4
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0x9c]
push dword [ebp - 0xac]
push eax
lea eax, [ebp - 0xbc]
push eax
call fcn.100e4e10
mov esi, dword [ebp - 0xcc]
add esp, 0x1c
mov ecx, esi
push dword [ebp - 0xbc]
call fcn.100d98d0
test eax, eax
jne 0x101181ea
push 1
push eax
push ecx
mov ecx, esp
push 0x10219d7c
call fcn.10004700
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ecx, esp
push 0x10219d7c
call fcn.10004700
push ecx
mov ecx, esp
push 0x10219d7c
call fcn.10004700
push ecx
mov ecx, esp
push 0x10219d7c
call fcn.10004700
push 0
push 0xffffffffffffffff
push 4
lea eax, [ebp - 0x9c]
push eax
push 0
push 4
call fcn.100e6ba0
add esp, 4
mov ecx, esi
push eax
push edi
push 0x10219d7c
push dword [ebx + 4]
push edi
call fcn.100d6a20
mov dword [ebp - 0xb0], eax
lea ecx, [esi + 0xbc]
lea eax, [ebp - 0xb0]
push eax
call fcn.10118df0
mov edx, dword [ebp - 0xbc]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118208
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0x9c]
test esi, esi
je 0x101182a5
mov ebx, dword [ebp - 0x98]
cmp esi, ebx
je 0x10118247
mov edx, dword [esi]
or eax, 0xffffffff
sub edx, 0x10
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1011823a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add esi, 4
cmp esi, ebx
jne 0x10118220
mov esi, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x94]
sub eax, esi
sar eax, 2
lea ecx, [eax*4]
mov eax, esi
cmp ecx, 0x1000
jb 0x10118277
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10118c64
push ecx
push esi
call fcn.102134ff
mov ebx, dword [ebp - 0x8c]
add esp, 8
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0
add edi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x101182bd
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xb4]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101182d8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xc0]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101182f3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [sym.imp.SHLWAPI.dll_SHGetValueW]
mov eax, dword [ebp - 0x90]
add ebx, 0xc
inc eax
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x90], eax
cmp eax, 0xb
jl 0x10117f40
xor ecx, ecx
mov dword [ebp - 0xb4], ecx
lea eax, [ecx + ecx*2]
mov dword [ebp - 0xc8], 4
shl eax, 2
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xc4], 4
mov edi, dword [ebp + eax - 0x88]
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp - 0xc8]
push eax
push edi
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
push reloc.OLEAUT32.dll_SysReAllocString
call esi
test eax, eax
jne 0x10118bd3
cmp dword [ebp - 0xb8], eax
je 0x10118bd3
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa8], eax
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0xa4], eax
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
push 0x3a
add eax, 0x10
mov dword [ebp - 0xac], reloc.OLEAUT32.dll_SysReAllocString
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0xa0], eax
call fcn.10004050
mov esi, dword [ebp - 0xa4]
lea ecx, [edi - 0x10]
add esi, 0xfffffff0
cmp ecx, esi
je 0x10118452
cmp dword [esi + 0xc], 0
lea ebx, [esi + 0xc]
jl 0x10118443
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x10118443
push ecx
call fcn.10004ba0
add esp, 4
mov edi, eax
or ecx, 0xffffffff
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x10118438
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
lea eax, [edi + 0x10]
mov dword [ebp - 0xa4], eax
jmp 0x10118452
push dword [edi - 0xc]
lea ecx, [ebp - 0xa4]
push edi
call fcn.10004050
mov ecx, dword [ebp - 0xbc]
mov ebx, dword [ebp - 0xa0]
mov ecx, dword [ebp + ecx - 0x84]
lea esi, [ebx - 0x10]
lea edx, [ecx - 0x10]
cmp edx, esi
je 0x101184bd
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x101184a8
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x101184a8
push edx
call fcn.10004ba0
add esp, 4
mov ebx, eax
or ecx, 0xffffffff
lock xadd dword [edi], ecx
dec ecx
test ecx, ecx
jg 0x1011849d
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
add ebx, 0x10
mov dword [ebp - 0xa0], ebx
jmp 0x101184bd
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0xa0]
call fcn.10004050
mov ebx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa4]
push 0x20019
push 4
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x9c], 0
mov esi, esp
mov dword [ebp - 0x98], 0
push eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0xd4], eax
call fcn.10004ba0
add eax, 0x10
mov dword [esi], eax
mov esi, esp
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
push eax
mov dword [ebp - 0xc0], eax
call fcn.10004ba0
add esp, 4
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0x9c]
push dword [ebp - 0xac]
push eax
lea eax, [ebp - 0xd0]
push eax
call fcn.100e4e10
mov ecx, dword [ebp - 0xcc]
add esp, 0x1c
push dword [ebp - 0xd0]
call fcn.100d98d0
test eax, eax
jne 0x10118ad1
push 1
push eax
push ecx
mov ebx, esp
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
mov esi, 0x10219d7c
add eax, 0x10
shr esi, 0x10
mov dword [ebx], eax
mov dword [ebp - 0x8c], esi
push 0
test esi, esi
jne 0x1011871b
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x10118679
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x90], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x101185dc
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x101185fa
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x10118679
mov eax, dword [ebp - 0x90]
jmp 0x101185b5
test esi, esi
je 0x10118679
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x10118679
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10118679
mov eax, dword [ebx]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x1011864f
push esi
mov ecx, ebx
call fcn.10003eb0
movzx edx, word [edi]
mov ecx, dword [ebx]
movzx eax, dx
push eax
lea eax, [edi + 2]
push eax
push esi
push ecx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x10118c5a
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
mov esi, dword [ebp - 0x8c]
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ebx, esp
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
push 0
test esi, esi
jne 0x10118847
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x101187ab
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x90], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x101186fd
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x1011872c
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x101187ab
mov eax, dword [ebp - 0x90]
jmp 0x101186d6
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
jmp 0x1011867f
test esi, esi
je 0x101187ab
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x101187ab
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x101187ab
mov eax, dword [ebx]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x10118781
push esi
mov ecx, ebx
call fcn.10003eb0
movzx edx, word [edi]
mov ecx, dword [ebx]
movzx eax, dx
push eax
lea eax, [edi + 2]
push eax
push esi
push ecx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x10118c5a
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
mov esi, dword [ebp - 0x8c]
push ecx
mov ebx, esp
call fcn.10003980
mov ecx, eax
test ecx, ecx
je 0x10118c69
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
push 0
test esi, esi
jne 0x10118975
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x101188d7
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x90], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10118829
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10118858
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x101188d7
mov eax, dword [ebp - 0x90]
jmp 0x10118802
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
jmp 0x101187b1
test esi, esi
je 0x101188d7
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x101188d7
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x101188d7
mov eax, dword [ebx]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x101188ad
push esi
mov ecx, ebx
call fcn.10003eb0
movzx edx, word [edi]
mov ecx, dword [ebx]
movzx eax, dx
push eax
lea eax, [edi + 2]
push eax
push esi
push ecx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x10118c5a
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
mov esi, dword [ebp - 0x8c]
push ecx
mov ebx, esp
call fcn.10003980
test eax, eax
je 0x10118c69
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebx], eax
push 0
test esi, esi
jne 0x10118a1f
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
mov edi, 1
test esi, esi
je 0x10118a2b
mov ecx, 0x10219d7c
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x90], eax
mov edi, edi
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10118957
mov edx, 0x10219d7c
movzx ecx, dx
push ecx
push eax
push esi
call fcn.100041b0
add esp, 0xc
test eax, eax
jne 0x10118986
push edi
mov ecx, 0x1025ab98
call fcn.101d9675
mov esi, eax
inc edi
test esi, esi
je 0x10118a2b
mov eax, dword [ebp - 0x90]
jmp 0x10118930
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
jmp 0x101188dd
test esi, esi
je 0x10118a2b
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x10118a2b
mov edx, 0x10219d7c
movzx eax, dx
push eax
push ecx
push esi
call fcn.100041b0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10118a2b
movzx ecx, word [edi]
mov edx, dword [ebx]
mov eax, ecx
mov esi, ecx
mov dword [ebp - 0x90], eax
mov ecx, 1
mov eax, dword [edx - 8]
sub ecx, dword [edx - 4]
sub eax, esi
or ecx, eax
jge 0x101189ef
push esi
mov ecx, ebx
call fcn.10003eb0
movzx eax, word [edi]
mov edx, dword [ebx]
jmp 0x101189f5
mov eax, dword [ebp - 0x90]
movzx eax, ax
push eax
lea eax, [edi + 2]
push eax
push esi
push edx
call fcn.100a7400
mov eax, dword [ebx]
add esp, 0x10
cmp esi, dword [eax - 8]
jg 0x10118c5a
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebx]
mov word [eax + esi*2], cx
jmp 0x10118a2b
push 0x10219d7c
mov ecx, ebx
call fcn.10004050
push 0
push 0xffffffffffffffff
push 4
lea eax, [ebp - 0x9c]
push eax
push 0
push 4
call fcn.100e6ba0
mov ebx, dword [ebp - 0xa0]
add esp, 4
mov esi, dword [ebp - 0xcc]
mov ecx, esi
push eax
mov eax, dword [ebp - 0xbc]
push ebx
push 0x10219d7c
push dword [ebp + eax - 0x80]
push ebx
call fcn.100d6a20
lea edi, [esi + 0xbc]
mov dword [ebp - 0xb0], eax
mov esi, dword [edi + 4]
cmp esi, dword [edi + 8]
je 0x10118ac2
push dword [ebp - 0xc0]
mov dword [esi], eax
mov eax, dword [ebp - 0xac]
mov dword [esi + 4], eax
call fcn.10004ba0
push dword [ebp - 0xd4]
add eax, 0x10
mov dword [esi + 8], eax
call fcn.10004ba0
add eax, 0x10
mov dword [esi + 0xc], eax
lea eax, [ebx - 0x10]
push eax
call fcn.10004ba0
add eax, 0x10
add esp, 0xc
mov dword [esi + 0x10], eax
add dword [edi + 4], 0x14
jmp 0x10118ad1
lea eax, [ebp - 0xb0]
mov ecx, edi
push eax
push esi
call fcn.10117300
mov edx, dword [ebp - 0xd0]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118aef
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0x9c]
test esi, esi
je 0x10118b7f
mov edi, dword [ebp - 0x98]
cmp esi, edi
je 0x10118b2e
mov edx, dword [esi]
or eax, 0xffffffff
sub edx, 0x10
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118b21
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add esi, 4
cmp esi, edi
jne 0x10118b07
mov esi, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x94]
mov eax, esi
sub ecx, esi
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x10118b57
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10118c64
push ecx
push esi
call fcn.102134ff
add esp, 8
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0
lea edx, [ebx - 0x10]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118b97
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xd4]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118bb2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xc0]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118bcd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [sym.imp.SHLWAPI.dll_SHGetValueW]
mov ecx, dword [ebp - 0xb4]
inc ecx
mov dword [ebp - 0xb4], ecx
cmp ecx, 0xb
jl 0x10118320
mov edi, 0xb
lea esi, [ebp - 4]
mov edx, dword [esi - 4]
lea esi, [esi - 0xc]
dec edi
sub edx, 0x10
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118c10
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esi + 4]
or eax, 0xffffffff
sub edx, 0x10
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118c2b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esi]
or eax, 0xffffffff
sub edx, 0x10
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10118c45
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test edi, edi
jne 0x10118bf1
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10212f74
mov esp, ebp
pop ebp
ret
push 0x80070057
call fcn.100030c0
call fcn.10200ab0
push 0x80004005
call fcn.100030c0
int3