Function at 0x10105e90
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
mov eax, dword [0x102519c8]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov dword [ebp - 0xc4], ecx
lea ecx, [ebp - 0x88]
push str.NoBrowserSaveAs
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x84]
push 0x2766
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10105eff
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x80]
push 0x9cb1
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10105f3f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoBrowserClose
lea ecx, [ebp - 0x7c]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x78]
push 0x2764
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10105f8c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x74]
push 0x9cb2
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10105fcc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoFileNew
lea ecx, [ebp - 0x70]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x6c]
push 0x2769
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106019
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x68]
push 0x9cb3
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106059
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoFileOpen
lea ecx, [ebp - 0x64]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x60]
push 0x2767
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101060a6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x5c]
push 0x9cb4
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101060e6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoTheaterMode
lea ecx, [ebp - 0x58]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x54]
push 0x2763
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106133
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x50]
push 0x9cb5
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106173
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoViewSource
lea ecx, [ebp - 0x4c]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x48]
push 0x276b
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101061c0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x44]
push 0x9cb6
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106200
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoFavorites
lea ecx, [ebp - 0x40]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x3c]
push 0x2768
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1010624d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x38]
push 0x9cb7
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1010628d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoBrowserOptions
lea ecx, [ebp - 0x34]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x30]
push 0x2761
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101062da
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x2c]
push 0x9cb8
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1010631a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoHelpItemTipOfTheDay
lea ecx, [ebp - 0x28]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x24]
push 0x276a
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106367
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x20]
push 0x9cb9
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101063a7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoHelpItemNetscapeHelp
lea ecx, [ebp - 0x1c]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x18]
push 0x2762
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101063f4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0x14]
push 0x9cba
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106434
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.NoHelpItemSendFeedback
lea ecx, [ebp - 0x10]
call fcn.10002490
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 0xc]
push 0x2765
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106481
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x10202940
lea ecx, [ebp - 0x8c]
call fcn.10002490
push eax
lea eax, [ebp - 8]
push 0x9cbb
push eax
call fcn.100053d0
mov edx, dword [ebp - 0x8c]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101064c1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [sym.imp.SHLWAPI.dll_SHGetValueW]
lea ebx, [ebp - 0x88]
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0x90], ebx
lea ecx, [ecx]
lea eax, [ebp - 0xcc]
mov dword [ebp - 0xd0], 4
push eax
lea eax, [ebp - 0xbc]
mov dword [ebp - 0xbc], 0
push eax
lea eax, [ebp - 0xd0]
mov dword [ebp - 0xcc], 4
push eax
push dword [ebx]
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
push SysReAllocString
call esi
test eax, eax
jne 0x1010688b
cmp dword [ebp - 0xbc], eax
je 0x1010688b
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0xac], eax
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0xa8], eax
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
push 0x3a
add eax, 0x10
mov dword [ebp - 0xb0], VariantCopy
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], eax
call fcn.10003740
mov ecx, dword [ebx]
mov esi, dword [ebp - 0xa8]
add esi, 0xfffffff0
lea edx, [ecx - 0x10]
cmp edx, esi
je 0x101065f4
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x101065e5
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x101065e5
push edx
call fcn.10002a60
add esp, 4
mov dword [ebp - 0x8c], eax
or ecx, 0xffffffff
lock xadd dword [edi], ecx
dec ecx
test ecx, ecx
jg 0x101065da
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x8c]
add eax, 0x10
mov dword [ebp - 0xa8], eax
jmp 0x101065f4
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0xa8]
call fcn.10003740
mov ecx, dword [ebx + 4]
mov edi, dword [ebp - 0xa4]
lea edx, [ecx - 0x10]
lea esi, [edi - 0x10]
cmp edx, esi
je 0x1010665f
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x1010664a
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x1010664a
push edx
call fcn.10002a60
add esp, 4
mov dword [ebp - 0x8c], eax
or ecx, 0xffffffff
lock xadd dword [edi], ecx
dec ecx
test ecx, ecx
jg 0x1010663f
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0x8c]
lea edi, [eax + 0x10]
mov dword [ebp - 0xa4], edi
jmp 0x1010665f
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0xa4]
call fcn.10003740
mov edi, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa8]
push 0x20019
push 4
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0xa0], 0
mov esi, esp
mov dword [ebp - 0x9c], 0
push eax
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x8c], eax
call fcn.10002a60
add eax, 0x10
mov dword [esi], eax
mov esi, esp
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
push eax
mov dword [ebp - 0xc8], eax
call fcn.10002a60
add esp, 4
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0xa0]
push dword [ebp - 0xb0]
push eax
lea eax, [ebp - 0xb8]
push eax
call fcn.100da240
mov ecx, dword [ebp - 0xc4]
add esp, 0x1c
push dword [ebp - 0xb8]
call fcn.100d06f0
test eax, eax
jne 0x1010677c
mov esi, dword [ebx + 8]
push 1
push eax
push ecx
mov ecx, esp
push 0x10202940
call fcn.10002490
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov ecx, esp
push 0x10202940
call fcn.10002490
push ecx
mov ecx, esp
push 0x10202940
call fcn.10002490
push ecx
mov ecx, esp
push 0x10202940
call fcn.10002490
push 0
push 0xffffffffffffffff
push 4
lea eax, [ebp - 0xa0]
push eax
push 0
push 4
call fcn.100dbb10
add esp, 4
push eax
push edi
push 0x10202940
push esi
mov esi, dword [ebp - 0xc4]
mov ecx, esi
push edi
call fcn.100cd930
mov dword [ebp - 0xb4], eax
lea ecx, [esi + 0xbc]
lea eax, [ebp - 0xb4]
push eax
call fcn.10107350
mov edx, dword [ebp - 0xb8]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1010679a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0xa0]
test esi, esi
je 0x10106837
mov ebx, dword [ebp - 0x9c]
cmp esi, ebx
je 0x101067d9
mov edx, dword [esi]
or eax, 0xffffffff
sub edx, 0x10
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x101067cc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add esi, 4
cmp esi, ebx
jne 0x101067b2
mov esi, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x98]
sub eax, esi
sar eax, 2
lea ecx, [eax*4]
mov eax, esi
cmp ecx, 0x1000
jb 0x10106809
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x101071d9
push ecx
push esi
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
mov ebx, dword [ebp - 0x90]
add esp, 8
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0
add edi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x1010684f
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x8c]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1010686a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xc8]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10106885
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 - 0xc0]
add ebx, 0xc
inc eax
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0xc0], eax
cmp eax, 0xb
jl 0x101064e0
xor ecx, ecx
mov dword [ebp - 0x8c], ecx
jmp 0x101068c0
lea eax, [ebp - 0xcc]
mov dword [ebp - 0xd0], 4
push eax
lea ebx, [ecx + ecx*2]
mov dword [ebp - 0xbc], 0
lea eax, [ebp - 0xbc]
shl ebx, 2
push eax
lea eax, [ebp - 0xd0]
mov dword [ebp - 0xcc], 4
push eax
push dword [ebp + ebx - 0x88]
mov dword [ebp - 0xc0], ebx
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
push reloc.OLEAUT32.dll_SysReAllocString
call esi
test eax, eax
jne 0x1010714c
cmp dword [ebp - 0xbc], eax
je 0x1010714c
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0xac], eax
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
mov dword [ebp - 0xa8], eax
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
push 0x3a
add eax, 0x10
mov dword [ebp - 0xb0], reloc.OLEAUT32.dll_SysReAllocString
push str.SoftwarePoliciesMicrosoftInternet_ExplorerRestrictions
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], eax
call fcn.10003740
mov ecx, dword [ebp + ebx - 0x88]
mov esi, dword [ebp - 0xa8]
add esi, 0xfffffff0
lea edx, [ecx - 0x10]
cmp edx, esi
je 0x101069e6
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x101069d7
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x101069d7
push edx
call fcn.10002a60
add esp, 4
mov ebx, eax
or ecx, 0xffffffff
lock xadd dword [edi], ecx
dec ecx
test ecx, ecx
jg 0x101069c6
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
lea eax, [ebx + 0x10]
mov ebx, dword [ebp - 0xc0]
mov dword [ebp - 0xa8], eax
jmp 0x101069e6
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0xa8]
call fcn.10003740
mov ecx, dword [ebp + ebx - 0x84]
mov ebx, dword [ebp - 0xa4]
lea edx, [ecx - 0x10]
lea esi, [ebx - 0x10]
cmp edx, esi
je 0x10106a4b
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x10106a36
mov eax, dword [edx]
cmp eax, dword [esi]
jne 0x10106a36
push edx
call fcn.10002a60
add esp, 4
mov ebx, eax
or ecx, 0xffffffff
lock xadd dword [edi], ecx
dec ecx
test ecx, ecx
jg 0x10106a2b
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
add ebx, 0x10
mov dword [ebp - 0xa4], ebx
jmp 0x10106a4b
push dword [ecx - 0xc]
push ecx
lea ecx, [ebp - 0xa4]
call fcn.10003740
mov ebx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa8]
push 0x20019
push 4
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0xa0], 0
mov esi, esp
mov dword [ebp - 0x9c], 0
push eax
mov dword [ebp - 0x98], 0
mov dword [ebp - 0xd8], eax
call fcn.10002a60
add eax, 0x10
mov dword [esi], eax
mov esi, esp
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
push eax
mov dword [ebp - 0xc8], eax
call fcn.10002a60
add esp, 4
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0xa0]
push dword [ebp - 0xb0]
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.100da240
mov ecx, dword [ebp - 0xc4]
add esp, 0x1c
push dword [ebp - 0xd4]
call fcn.100d06f0
test eax, eax
jne 0x10107044
push 1
push eax
push ecx
mov esi, esp
mov dword [ebp - 0x94], esi
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
mov dword [esi], eax
mov eax, 0x10202940
shr eax, 0x10
mov dword [ebp - 0xb8], eax
push 0
test eax, eax
jne 0x10106c08
mov eax, 0x10202940
mov ecx, 0x1025bea0
movzx ebx, ax
call fcn.101beff4
mov esi, eax
mov edi, 1
test esi, esi
je 0x10106c14
mov ecx, ebx
shr ecx, 4
lea eax, [ecx + 1]
mov dword [ebp - 0x90], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10106b64
push ebx
push eax
push esi
call fcn.10003980
add esp, 0xc
test eax, eax
jne 0x10106b82
push edi
mov ecx, 0x1025bea0
call fcn.101beff4
mov esi, eax
inc edi
test esi, esi
je 0x10106c14
mov eax, dword [ebp - 0x90]
jmp 0x10106b45
test esi, esi
je 0x10106c14
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x10106c14
push ebx
push eax
push esi
call fcn.10003980
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10106c14
mov ebx, dword [ebp - 0x94]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
mov dword [ebp - 0x94], edx
mov eax, dword [ebx]
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x10106bdf
push esi
mov ecx, ebx
call fcn.10003310
movzx eax, word [edi]
jmp 0x10106be5
mov eax, dword [ebp - 0x94]
mov edx, dword [ebx]
movzx ecx, ax
lea eax, [edi + 2]
push ecx
push eax
push esi
push edx
call fcn.101eb860
mov eax, dword [ebx]
add esp, 0x10
xor ecx, ecx
mov dword [eax - 0xc], esi
mov eax, dword [ebx]
mov word [eax + esi*2], cx
jmp 0x10106c14
push 0x10202940
mov ecx, esi
call fcn.10003740
push 1
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
mov esi, esp
mov dword [ebp - 0x94], esi
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
cmp dword [ebp - 0xb8], 0
mov dword [esi], eax
push 0
jne 0x10106d35
mov eax, 0x10202940
mov ecx, 0x1025bea0
movzx ebx, ax
call fcn.101beff4
mov esi, eax
mov edi, 1
test esi, esi
je 0x10106d41
mov ecx, ebx
shr ecx, 4
lea eax, [ecx + 1]
mov dword [ebp - 0x90], eax
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10106c91
push ebx
push eax
push esi
call fcn.10003980
add esp, 0xc
test eax, eax
jne 0x10106caf
push edi
mov ecx, 0x1025bea0
call fcn.101beff4
mov esi, eax
inc edi
test esi, esi
je 0x10106d41
mov eax, dword [ebp - 0x90]
jmp 0x10106c72
test esi, esi
je 0x10106d41
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x10106d41
push ebx
push eax
push esi
call fcn.10003980
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10106d41
mov ebx, dword [ebp - 0x94]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
mov dword [ebp - 0x94], edx
mov eax, dword [ebx]
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x10106d0c
push esi
mov ecx, ebx
call fcn.10003310
movzx eax, word [edi]
jmp 0x10106d12
mov eax, dword [ebp - 0x94]
mov edx, dword [ebx]
movzx ecx, ax
lea eax, [edi + 2]
push ecx
push eax
push esi
push edx
call fcn.101eb860
mov eax, dword [ebx]
add esp, 0x10
xor ecx, ecx
mov dword [eax - 0xc], esi
mov eax, dword [ebx]
mov word [eax + esi*2], cx
jmp 0x10106d41
push 0x10202940
mov ecx, esi
call fcn.10003740
push ecx
mov esi, esp
mov dword [ebp - 0x94], esi
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
cmp dword [ebp - 0xb8], 0
mov dword [esi], eax
push 0
jne 0x10106e63
mov eax, 0x10202940
mov ecx, 0x1025bea0
movzx ebx, ax
call fcn.101beff4
mov esi, eax
mov edi, 1
test esi, esi
je 0x10106e6f
mov ecx, ebx
shr ecx, 4
lea eax, [ecx + 1]
mov dword [ebp - 0x90], eax
lea esp, [esp]
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10106dbf
push ebx
push eax
push esi
call fcn.10003980
add esp, 0xc
test eax, eax
jne 0x10106ddd
push edi
mov ecx, 0x1025bea0
call fcn.101beff4
mov esi, eax
inc edi
test esi, esi
je 0x10106e6f
mov eax, dword [ebp - 0x90]
jmp 0x10106da0
test esi, esi
je 0x10106e6f
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
test eax, eax
je 0x10106e6f
push ebx
push eax
push esi
call fcn.10003980
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10106e6f
mov ebx, dword [ebp - 0x94]
mov ecx, 1
movzx edx, word [edi]
mov esi, edx
mov dword [ebp - 0x94], edx
mov eax, dword [ebx]
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, esi
or eax, ecx
jge 0x10106e3a
push esi
mov ecx, ebx
call fcn.10003310
movzx eax, word [edi]
jmp 0x10106e40
mov eax, dword [ebp - 0x94]
mov edx, dword [ebx]
movzx ecx, ax
lea eax, [edi + 2]
push ecx
push eax
push esi
push edx
call fcn.101eb860
mov eax, dword [ebx]
add esp, 0x10
xor ecx, ecx
mov dword [eax - 0xc], esi
mov eax, dword [ebx]
mov word [eax + esi*2], cx
jmp 0x10106e6f
push 0x10202940
mov ecx, esi
call fcn.10003740
push ecx
mov ebx, esp
call fcn.10002d70
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0xc]
add eax, 0x10
cmp dword [ebp - 0xb8], 0
mov dword [ebx], eax
push 0
jne 0x10106f91
mov ecx, 0x1025bea0
call fcn.101beff4
mov esi, eax
mov edi, 1
test esi, esi
je 0x10106f9d
mov ecx, 0x10202940
movzx eax, cx
shr eax, 4
inc eax
mov dword [ebp - 0x90], eax
lea ecx, [ecx]
push 0
push eax
push 6
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceExW]
test eax, eax
je 0x10106ee7
mov edx, 0x10202940
movzx ecx, dx
push ecx
push eax
push esi
call fcn.10003980
add esp, 0xc
test eax, eax
jne 0x10106f05
push edi
mov ecx, 0x1025bea0
call fcn.101beff4
mov esi, eax
inc edi
test esi, esi
je 0x10106f9d
mov eax, dword [ebp - 0x90]
jmp 0x10106ec0
test esi, esi
je 0x10106f9d
push 6
push dword [ebp - 0x90]
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, eax
test ecx, ecx
je 0x10106f9d
mov edx, 0x10202940
movzx eax, dx
push eax
push ecx
push esi
call fcn.10003980
mov edi, eax
add esp, 0xc
test edi, edi
je 0x10106f9d
movzx ecx, word [edi]
mov edx, dword [ebx]
mov eax, ecx
mov esi, ecx
mov dword [ebp - 0x94], eax
mov ecx, 1
mov eax, dword [edx - 8]
sub ecx, dword [edx - 4]
sub eax, esi
or ecx, eax
jge 0x10106f6a
push esi
mov ecx, ebx
call fcn.10003310
mov edx, dword [ebx]
movzx eax, word [edi]
jmp 0x10106f70
mov eax, dword [ebp - 0x94]
movzx ecx, ax
lea eax, [edi + 2]
push ecx
push eax
push esi
push edx
call fcn.101eb860
mov eax, dword [ebx]
add esp, 0x10
xor ecx, ecx
mov dword [eax - 0xc], esi
mov eax, dword [ebx]
mov word [eax + esi*2], cx
jmp 0x10106f9d
push 0x10202940
mov ecx, ebx
call fcn.10003740
mov esi, dword [ebp - 0xc0]
lea eax, [ebp - 0xa0]
push 0
push 0xffffffffffffffff
push 4
mov esi, dword [ebp + esi - 0x80]
push eax
push 0
push 4
call fcn.100dbb10
mov ebx, dword [ebp - 0xa4]
add esp, 4
push eax
push ebx
push 0x10202940
push esi
mov esi, dword [ebp - 0xc4]
mov ecx, esi
push ebx
call fcn.100cd930
lea edi, [esi + 0xbc]
mov dword [ebp - 0xb4], eax
mov esi, dword [edi + 4]
cmp dword [edi + 8], esi
je 0x10107035
push dword [ebp - 0xc8]
mov dword [esi], eax
mov eax, dword [ebp - 0xb0]
mov dword [esi + 4], eax
call fcn.10002a60
push dword [ebp - 0xd8]
add eax, 0x10
mov dword [esi + 8], eax
call fcn.10002a60
add eax, 0x10
mov dword [esi + 0xc], eax
lea eax, [ebx - 0x10]
push eax
call fcn.10002a60
add eax, 0x10
add esp, 0xc
mov dword [esi + 0x10], eax
add dword [edi + 4], 0x14
jmp 0x10107044
lea eax, [ebp - 0xb4]
mov ecx, edi
push eax
push esi
call fcn.101052f0
mov edx, dword [ebp - 0xd4]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10107062
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0xa0]
test esi, esi
je 0x101070f8
mov edi, dword [ebp - 0x9c]
cmp esi, edi
je 0x101070a7
lea ebx, [ebx]
mov edx, dword [esi]
or eax, 0xffffffff
sub edx, 0x10
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1010709a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add esi, 4
cmp esi, edi
jne 0x10107080
mov esi, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x98]
mov eax, esi
sub ecx, esi
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x101070d0
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x101071d9
push ecx
push esi
call sub.msvcrt.dll_void___cdecl_operator_delete_void__
add esp, 8
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0
lea edx, [ebx - 0x10]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10107110
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xd8]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1010712b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xc8]
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10107146
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 - 0x8c]
inc ecx
mov dword [ebp - 0x8c], ecx
cmp ecx, 0xb
jl 0x101068c0
mov edi, 0xb
lea esi, [ebp - 4]
lea ebx, [ebx]
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 0x1010718f
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 0x101071aa
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 0x101071c4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test edi, edi
jne 0x10107170
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.101f99c6
mov esp, ebp
pop ebp
ret
call fcn.101e6c40
int3