Function at 0x410d10
Capabilities:
Query or enumerate registry value

Disassembly:
push 0xffffffffffffffff
push 0x4502bc
mov eax, dword fs:[0]
push eax
mov eax, 0xc24c
call fcn.00435600
mov eax, dword [0x466d98]
xor eax, esp
mov dword [esp + 0xc248], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x466d98]
xor eax, esp
push eax
lea eax, [esp + 0xc260]
mov dword fs:[0], eax
push 1
push 2
lea ecx, [esp + 0x54]
call fcn.00404370
lea eax, [esp + 0x4c]
push 0x458a7c
xor ebp, ebp
push eax
mov dword [esp + 0xc270], ebp
call fcn.004073a0
add esp, 8
lea ecx, [esp + 0x2c]
push ecx
lea ecx, [esp + 0x50]
call fcn.004044d0
mov edi, 0x10
mov byte [esp + 0xc268], 1
cmp dword [eax + 0x18], edi
jb 0x410d9c
mov eax, dword [eax + 4]
jmp 0x410d9f
add eax, 4
push eax
push str.CClientBase::StopTheProcessWithRegInfo
push 0x5ca
push str..ClientBase.cpp
push 0x2002
call fcn.004075e0
mov ecx, eax
call fcn.0041f2e0
cmp dword [esp + 0x44], edi
jb 0x410dd3
mov edx, dword [esp + 0x30]
push edx
call fcn.00433d63
add esp, 4
lea ecx, [esp + 0x98]
mov dword [esp + 0xc268], 0xffffffff
call fcn.00404450
lea eax, [esp + 0x98]
mov esi, vtable.std::ios_base.0
push eax
mov dword [esp + 0x9c], esi
call fcn.004339e9
add esp, 4
lea ecx, [esp + 0xdc]
call fcn.00426460
lea ecx, [esp + 0x174]
mov dword [esp + 0xc268], 2
call fcn.00414ea0
lea ecx, [esp + 0x18]
push ecx
push 0x2001f
push ebp
push str.SOFTWAREywSMP
mov byte [esp + 0xc278], 3
push reloc.WS2_32.dll_bind
mov dword [esp + 0x2c], ebp
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
cmp eax, ebp
je 0x410f32
push 1
push 2
lea ecx, [esp + 0x54]
call fcn.00404370
mov byte [esp + 0xc268], 4
call sub.WS2_32.dll_WSAGetLastError
push eax
push ecx
push 0x4581ac
push ecx
push str.SOFTWAREywSMP
push ecx
lea edx, [esp + 0x64]
push 0x458adc
push edx
call fcn.004073a0
add esp, 0xc
push eax
call fcn.004073a0
add esp, 0xc
push eax
call fcn.004073a0
add esp, 0xc
mov ecx, eax
call fcn.00414f90
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x50]
call fcn.004044d0
mov byte [esp + 0xc268], 5
cmp dword [eax + 0x18], edi
jb 0x410ecb
mov eax, dword [eax + 4]
jmp 0x410ece
add eax, 4
push eax
push str.CClientBase::StopTheProcessWithRegInfo
push 0x5da
push str..ClientBase.cpp
push 0x2002
call fcn.004075e0
mov ecx, eax
call fcn.0041f2e0
cmp dword [esp + 0x44], edi
jb 0x410f02
mov ecx, dword [esp + 0x30]
push ecx
call fcn.00433d63
add esp, 4
lea ecx, [esp + 0x98]
mov byte [esp + 0xc268], 3
call fcn.00404450
lea edx, [esp + 0x98]
push edx
mov dword [esp + 0x9c], esi
call fcn.004339e9
add esp, 4
jmp 0x41148f
push 0x3fff
lea eax, [esp + 0x260]
push ebp
push eax
mov dword [esp + 0x34], ebp
mov dword [esp + 0x30], ebp
call fcn.00435580
add esp, 0xc
push 0x7ffe
lea ecx, [esp + 0x4260]
push ebp
push ecx
call fcn.00435580
add esp, 0xc
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x4260]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, dword [esp + 0x24]
push ebp
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x270]
push eax
push ebp
push ecx
mov dword [esp + 0x3c], 0x3fff
mov dword [esp + 0x40], 0x7ffe
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
cmp eax, ebp
jne 0x411484
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [esp + 0x25c]
push str.asvr
push edx
call fcn.00434220
add esp, 8
test eax, eax
je 0x410fff
lea eax, [esp + 0x25c]
push str.agent
push eax
call fcn.00434220
add esp, 8
test eax, eax
je 0x410fff
lea ecx, [esp + 0x25c]
push 0x458b00
push ecx
call fcn.0041ad40
add esp, 8
test eax, eax
je 0x411404
movzx edx, byte [esp + 0x425e]
movzx eax, byte [esp + 0x425f]
movzx ecx, byte [esp + 0x425d]
movzx esi, byte [esp + 0x425c]
shl eax, 0x18
shl edx, 0x10
shl ecx, 8
or eax, edx
or eax, ecx
or eax, esi
mov esi, eax
push esi
lea ecx, [esp + 0xe0]
call fcn.00426d30
test eax, eax
je 0x411404
lea edx, [esp + 0x174]
push edx
push esi
lea ecx, [esp + 0xe4]
call fcn.00427b00
test eax, eax
je 0x411241
cmp dword [esp + 0x190], edi
mov eax, dword [esp + 0x17c]
jae 0x411079
lea eax, [esp + 0x17c]
push eax
lea ecx, [esp + 0xe0]
call fcn.00427fc0
test eax, eax
jne 0x411404
push 1
push 2
lea ecx, [esp + 0x54]
call fcn.00404370
mov byte [esp + 0xc268], 6
call ebx
push eax
push ecx
lea eax, [esp + 0x54]
push 0x458b04
push eax
call fcn.004073a0
add esp, 0xc
mov ecx, eax
call fcn.00403e80
lea ecx, [esp + 0x2c]
push ecx
lea ecx, [esp + 0x50]
call fcn.004044d0
mov byte [esp + 0xc268], 7
cmp dword [eax + 0x18], edi
jb 0x4110e0
mov eax, dword [eax + 4]
jmp 0x4110e3
add eax, 4
push eax
push str.CClientBase::StopTheProcessWithRegInfo
push 0x60c
push str..ClientBase.cpp
push 0x2002
call fcn.004075e0
mov ecx, eax
call fcn.0041f2e0
cmp dword [esp + 0x44], edi
jb 0x411117
mov edx, dword [esp + 0x30]
push edx
call fcn.00433d63
add esp, 4
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx + 4]
lea eax, [esp + 0x98]
mov dword [esp + 0x48], eax
mov dword [esp + edx + 0x4c], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
test byte [esp + 0x90], 1
lea eax, [esp + 0x50]
mov dword [esp + 0xd8], eax
mov dword [esp + 0x50], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
je 0x41115d
mov ecx, dword [esp + 0x60]
mov eax, dword [ecx]
push eax
call fcn.00433d63
add esp, 4
mov edx, dword [esp + 0x60]
mov dword [edx], ebp
mov eax, dword [esp + 0x70]
mov dword [eax], ebp
mov ecx, dword [esp + 0x80]
mov dword [ecx], ebp
mov edx, dword [esp + 0x64]
mov dword [edx], ebp
mov eax, dword [esp + 0x74]
mov dword [eax], ebp
mov ecx, dword [esp + 0x84]
mov dword [ecx], ebp
and dword [esp + 0x90], 0xfffffffe
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x50], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
mov byte [esp + 0xc268], 9
mov eax, dword [esp + 0x88]
test eax, eax
mov ebp, eax
je 0x41120c
mov edi, dword [eax]
test edi, edi
je 0x4111fe
push 0
lea ecx, [esp + 0xd4]
call fcn.00433a7f
mov eax, dword [edi + 4]
test eax, eax
jbe 0x4111d9
cmp eax, 0xffffffff
jae 0x4111d9
add eax, 0xffffffff
mov dword [edi + 4], eax
mov esi, dword [edi + 4]
neg esi
sbb esi, esi
not esi
lea ecx, [esp + 0xd0]
and esi, edi
call fcn.00433aa0
test esi, esi
je 0x4111fe
mov edx, dword [esi]
mov eax, dword [edx]
push 1
mov ecx, esi
call eax
push ebp
call fcn.00433d63
add esp, 4
mov edi, 0x10
lea ecx, [esp + 0x54]
mov byte [esp + 0xc268], 8
call fcn.00433c70
mov byte [esp + 0xc268], 3
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx + 4]
lea eax, [esp + 0x98]
mov dword [esp + edx + 0x4c], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
push eax
jmp 0x4113ef
push 1
push 2
lea ecx, [esp + 0x54]
call fcn.00404370
mov byte [esp + 0xc268], 0xa
call ebx
push eax
push ecx
lea ecx, [esp + 0x54]
push 0x458b24
push ecx
call fcn.004073a0
add esp, 0xc
mov ecx, eax
call fcn.00403e80
lea edx, [esp + 0x2c]
push edx
lea ecx, [esp + 0x50]
call fcn.004044d0
mov byte [esp + 0xc268], 0xb
cmp dword [eax + 0x18], edi
jb 0x411293
mov eax, dword [eax + 4]
jmp 0x411296
add eax, 4
push eax
push str.CClientBase::StopTheProcessWithRegInfo
push 0x611
push str..ClientBase.cpp
push 0x2002
call fcn.004075e0
mov ecx, eax
call fcn.0041f2e0
cmp dword [esp + 0x44], edi
jb 0x4112ca
mov eax, dword [esp + 0x30]
push eax
call fcn.00433d63
add esp, 4
mov edx, dword [esp + 0x4c]
mov eax, dword [edx + 4]
lea ecx, [esp + 0x98]
mov dword [esp + 0xd8], ecx
mov dword [esp + eax + 0x4c], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
test byte [esp + 0x90], 1
lea ecx, [esp + 0x50]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x50], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
je 0x411310
mov edx, dword [esp + 0x60]
mov eax, dword [edx]
push eax
call fcn.00433d63
add esp, 4
mov eax, dword [esp + 0x60]
mov dword [eax], ebp
mov ecx, dword [esp + 0x70]
mov dword [ecx], ebp
mov edx, dword [esp + 0x80]
mov dword [edx], ebp
mov eax, dword [esp + 0x64]
mov dword [eax], ebp
mov ecx, dword [esp + 0x74]
mov dword [ecx], ebp
mov edx, dword [esp + 0x84]
mov dword [edx], ebp
and dword [esp + 0x90], 0xfffffffe
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x50], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
mov byte [esp + 0xc268], 0xd
mov eax, dword [esp + 0x88]
test eax, eax
mov ebp, eax
je 0x4113bf
mov edi, dword [eax]
test edi, edi
je 0x4113b1
push 0
lea ecx, [esp + 0xd8]
call fcn.00433a7f
mov eax, dword [edi + 4]
test eax, eax
jbe 0x41138c
cmp eax, 0xffffffff
jae 0x41138c
add eax, 0xffffffff
mov dword [edi + 4], eax
mov esi, dword [edi + 4]
neg esi
sbb esi, esi
not esi
lea ecx, [esp + 0xd4]
and esi, edi
call fcn.00433aa0
test esi, esi
je 0x4113b1
mov eax, dword [esi]
mov edx, dword [eax]
push 1
mov ecx, esi
call edx
push ebp
call fcn.00433d63
add esp, 4
mov edi, 0x10
lea ecx, [esp + 0x54]
mov byte [esp + 0xc268], 0xc
call fcn.00433c70
mov byte [esp + 0xc268], 3
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 4]
lea edx, [esp + 0x98]
mov dword [esp + ecx + 0x4c], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
push edx
mov dword [esp + 0x9c], vtable.std::ios_base.0
call fcn.004339e9
add esp, 4
xor ebp, ebp
mov esi, dword [esp + 0x24]
push 0x3fff
lea eax, [esp + 0x260]
push ebp
add esi, 1
push eax
mov dword [esp + 0x30], esi
call fcn.00435580
add esp, 0xc
push 0x7ffe
lea ecx, [esp + 0x4260]
push ebp
push ecx
call fcn.00435580
add esp, 0xc
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x4260]
push eax
lea ecx, [esp + 0x30]
push ecx
mov ecx, dword [esp + 0x24]
push ebp
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x270]
push eax
push esi
push ecx
mov dword [esp + 0x3c], 0x3fff
mov dword [esp + 0x40], 0x7ffe
call dword [sym.imp.ADVAPI32.dll_RegEnumValueA]
cmp eax, ebp
je 0x410fb0
mov esi, vtable.std::ios_base.0
mov edx, dword [esp + 0x18]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 1
push 2
lea ecx, [esp + 0xfc]
call fcn.00404370
lea eax, [esp + 0xf4]
push 0x458b48
push eax
mov byte [esp + 0xc270], 0xe
call fcn.004073a0
add esp, 8
lea ecx, [esp + 0x2c]
push ecx
lea ecx, [esp + 0xf8]
call fcn.004044d0
mov ebx, 0xf
mov byte [esp + 0xc268], bl
cmp dword [eax + 0x18], edi
jb 0x4114e3
mov eax, dword [eax + 4]
jmp 0x4114e6
add eax, 4
push eax
push str.CClientBase::StopTheProcessWithRegInfo
push 0x63f
push str..ClientBase.cpp
push 0x2002
call fcn.004075e0
mov ecx, eax
call fcn.0041f2e0
cmp dword [esp + 0x44], edi
jb 0x41151a
mov edx, dword [esp + 0x30]
push edx
call fcn.00433d63
add esp, 4
lea ecx, [esp + 0x140]
mov byte [esp + 0xc268], 3
call fcn.00404450
lea eax, [esp + 0x140]
push eax
mov dword [esp + 0x144], esi
call fcn.004339e9
add esp, 4
lea ecx, [esp + 0x1c0]
call fcn.00414e10
cmp dword [esp + 0x1ac], edi
jb 0x41156a
mov ecx, dword [esp + 0x198]
push ecx
call fcn.00433d63
add esp, 4
cmp dword [esp + 0x190], edi
mov dword [esp + 0x1ac], ebx
mov dword [esp + 0x1a8], ebp
mov byte [esp + 0x198], 0
jb 0x411599
mov edx, dword [esp + 0x17c]
push edx
call fcn.00433d63
add esp, 4
lea eax, [esp + 0xe0]
push eax
mov dword [esp + 0x194], ebx
mov dword [esp + 0x190], ebp
mov byte [esp + 0x180], 0
mov dword [esp + 0xe0], vtable.BaseLib::TPointerContainer_class_std::list_struct_BaseLib::_tag_process_info___class_std::allocator_struct_BaseLib::_tag_process_info____.0
call fcn.00414cd0
add esp, 4
lea ecx, [esp + 0xe0]
call fcn.00404e10
mov ecx, dword [esp + 0xc260]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc248]
xor ecx, esp
call fcn.00433d68
add esp, 0xc258
ret