Function at 0x42ba10
Capabilities:
Contain obfuscated stackstrings
Delete registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45cf46
mov eax, dword fs:[0]
push eax
sub esp, 0xc4c
mov eax, dword [0x471090]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x98c], 0
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x6c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov byte [ebp - 4], 2
mov dword [ebp - 0x50], 0
mov ecx, 0x471110
call fcn.00452e60
test eax, eax
jne 0x42bb99
lea eax, [ebp - 0xe8]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0xcc], esp
push 0x27
push 0x464c04
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x990], eax
lea ecx, [ebp - 0xc8]
call fcn.00401fe0
mov dword [ebp - 0x994], eax
mov ecx, dword [ebp - 0x994]
mov dword [ebp - 0x998], ecx
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x998]
call fcn.00402060
mov dword [ebp - 0x99c], eax
mov edx, dword [ebp - 0x99c]
mov dword [ebp - 0x9a0], edx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x9a0]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0xa8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 5
lea eax, [ebp - 0xa8]
push eax
mov ecx, 0x4712ac
call fcn.00452ca0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xa8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xe8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xc8]
call fcn.00444890
mov dword [ebp - 0xec], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0xec]
jmp 0x42d80a
call dword [sym.imp.MSVCR90.dll_rand]
mov esi, eax
mov ecx, 0x471110
call fcn.00452e60
mov ecx, eax
mov eax, esi
xor edx, edx
div ecx
mov dword [ebp - 0x50], edx
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov byte [ebp - 4], 6
mov ecx, dword [ebp + 8]
add ecx, 0x20
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
test eax, eax
je 0x42bbe5
mov edx, dword [ebp + 8]
add edx, 0x20
push edx
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
jmp 0x42bc00
mov eax, dword [ebp - 0x50]
push eax
mov ecx, 0x471110
call fcn.00452e80
add eax, 0x1c
push eax
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [ebp - 0x10]
push ecx
push 0xf003f
push 0
mov ecx, dword [ebp + 8]
add ecx, 4
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x42c39d
push 0
lea ecx, [ebp - 0x10]
push ecx
push 0
push 0xf003f
push 0
push 0
push 0
mov ecx, dword [ebp + 8]
add ecx, 4
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
je 0x42c39d
mov ecx, dword [ebp + 8]
mov byte [ecx + 0x3c], 0
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
and eax, 0xff
cmp eax, 2
jne 0x42bd1a
lea ecx, [ebp - 0x1c0]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1a4], esp
push 4
push 0x464c34
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x9a4], eax
lea ecx, [ebp - 0x1a0]
call fcn.00401fe0
mov dword [ebp - 0x9a8], eax
mov edx, dword [ebp - 0x9a8]
mov dword [ebp - 0x9ac], edx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x98c]
or eax, 1
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0x9ac]
call fcn.004023f0
mov dword [ebp - 0x9b0], eax
mov ecx, dword [ebp - 0x9b0]
mov dword [ebp - 0x9b4], ecx
mov dword [ebp - 4], 8
mov edx, dword [ebp - 0x98c]
or edx, 2
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0x9b4]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0x9b8], eax
jmp 0x42bf3f
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
and ecx, 0xff
cmp ecx, 1
jne 0x42bdd1
lea edx, [ebp - 0x200]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push 4
push 0x464c3c
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x9bc], eax
lea ecx, [ebp - 0x1e0]
call fcn.00401fe0
mov dword [ebp - 0x9c0], eax
mov eax, dword [ebp - 0x9c0]
mov dword [ebp - 0x9c4], eax
mov dword [ebp - 4], 9
mov ecx, dword [ebp - 0x98c]
or ecx, 4
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0x9c4]
call fcn.004021e0
mov dword [ebp - 0x9c8], eax
mov edx, dword [ebp - 0x9c8]
mov dword [ebp - 0x9cc], edx
mov dword [ebp - 4], 0xa
mov eax, dword [ebp - 0x98c]
or eax, 8
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0x9cc]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0x9d0], eax
jmp 0x42bf33
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
and edx, 0xff
cmp edx, 3
jne 0x42be88
lea eax, [ebp - 0x240]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x224], esp
push 4
push 0x464c44
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x9d4], eax
lea ecx, [ebp - 0x220]
call fcn.00401fe0
mov dword [ebp - 0x9d8], eax
mov ecx, dword [ebp - 0x9d8]
mov dword [ebp - 0x9dc], ecx
mov dword [ebp - 4], 0xb
mov edx, dword [ebp - 0x98c]
or edx, 0x10
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0x9dc]
call fcn.00402610
mov dword [ebp - 0x9e0], eax
mov eax, dword [ebp - 0x9e0]
mov dword [ebp - 0x9e4], eax
mov dword [ebp - 4], 0xc
mov ecx, dword [ebp - 0x98c]
or ecx, 0x20
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0x9e4]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0x9e8], eax
jmp 0x42bf27
lea edx, [ebp - 0x280]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x264], esp
push 4
push 0x464c4c
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0x9ec], eax
lea ecx, [ebp - 0x260]
call fcn.00401fe0
mov dword [ebp - 0x9f0], eax
mov eax, dword [ebp - 0x9f0]
mov dword [ebp - 0x9f4], eax
mov dword [ebp - 4], 0xd
mov ecx, dword [ebp - 0x98c]
or ecx, 0x40
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0x9f4]
call fcn.004021e0
mov dword [ebp - 0x9f8], eax
mov edx, dword [ebp - 0x9f8]
mov dword [ebp - 0x9fc], edx
mov dword [ebp - 4], 0xe
mov eax, dword [ebp - 0x98c]
or eax, 0x80
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0x9fc]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0x9e8], eax
mov ecx, dword [ebp - 0x9e8]
mov dword [ebp - 0x9d0], ecx
mov edx, dword [ebp - 0x9d0]
mov dword [ebp - 0x9b8], edx
push 0x464c2c
lea ecx, [ebp - 0x108]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xa00], eax
mov eax, dword [ebp - 0xa00]
mov dword [ebp - 0xa04], eax
mov dword [ebp - 4], 0xf
mov ecx, dword [ebp - 0xa04]
push ecx
mov edx, dword [ebp + 8]
add edx, 4
push edx
lea eax, [ebp - 0x164]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x148], esp
push 2
push 0x464c30
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xa08], eax
lea ecx, [ebp - 0x144]
call fcn.00401fe0
mov dword [ebp - 0xa0c], eax
mov ecx, dword [ebp - 0xa0c]
mov dword [ebp - 0xa10], ecx
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0xa10]
call fcn.004021e0
mov dword [ebp - 0xa14], eax
mov edx, dword [ebp - 0xa14]
mov dword [ebp - 0xa18], edx
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0xa18]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x124]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xa1c], eax
mov eax, dword [ebp - 0xa1c]
mov dword [ebp - 0xa20], eax
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0xa20]
push ecx
mov edx, dword [ebp - 0x9b8]
push edx
lea ecx, [ebp - 0x180]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xa24], eax
mov eax, dword [ebp - 0xa24]
mov dword [ebp - 0xa28], eax
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0xa28]
push ecx
lea edx, [ebp - 0x2c0]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2a4], esp
push 0x25
push 0x464c54
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xa2c], eax
lea ecx, [ebp - 0x2a0]
call fcn.00401fe0
mov dword [ebp - 0xa30], eax
mov eax, dword [ebp - 0xa30]
mov dword [ebp - 0xa34], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0xa34]
call fcn.004023f0
mov dword [ebp - 0xa38], eax
mov ecx, dword [ebp - 0xa38]
mov dword [ebp - 0xa3c], ecx
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0xa3c]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea edx, [ebp - 0x2dc]
push edx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___char_const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xa40], eax
mov eax, dword [ebp - 0xa40]
mov dword [ebp - 0xa44], eax
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0xa44]
push ecx
lea edx, [ebp - 0x2f8]
push edx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa48]
mov dword [ebp - 0xa4c], eax
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0xa4c]
push ecx
lea edx, [ebp - 0x314]
push edx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xa50], eax
mov eax, dword [ebp - 0xa50]
mov dword [ebp - 0xa54], eax
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0xa54]
push ecx
lea edx, [ebp - 0x330]
push edx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xa58], eax
mov eax, dword [ebp - 0xa58]
mov dword [ebp - 0xa5c], eax
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0xa5c]
push ecx
mov ecx, 0x4712ac
call fcn.00452ca0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x330]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x314]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x2f8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x2dc]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2c0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x2a0]
call fcn.00444890
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x180]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x124]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x164]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x144]
call fcn.00444890
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x108]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xd
mov edx, dword [ebp - 0x98c]
and edx, 0x80
je 0x42c24f
and dword [ebp - 0x98c], 0xffffff7f
lea ecx, [ebp - 0x280]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xc
mov eax, dword [ebp - 0x98c]
and eax, 0x40
je 0x42c273
and dword [ebp - 0x98c], 0xffffffbf
lea ecx, [ebp - 0x260]
call fcn.00444890
mov dword [ebp - 4], 0xb
mov ecx, dword [ebp - 0x98c]
and ecx, 0x20
je 0x42c298
and dword [ebp - 0x98c], 0xffffffdf
lea ecx, [ebp - 0x240]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xa
mov edx, dword [ebp - 0x98c]
and edx, 0x10
je 0x42c2bc
and dword [ebp - 0x98c], 0xffffffef
lea ecx, [ebp - 0x220]
call fcn.00444890
mov dword [ebp - 4], 9
mov eax, dword [ebp - 0x98c]
and eax, 8
je 0x42c2e1
and dword [ebp - 0x98c], 0xfffffff7
lea ecx, [ebp - 0x200]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 8
mov ecx, dword [ebp - 0x98c]
and ecx, 4
je 0x42c305
and dword [ebp - 0x98c], 0xfffffffb
lea ecx, [ebp - 0x1e0]
call fcn.00444890
mov dword [ebp - 4], 7
mov edx, dword [ebp - 0x98c]
and edx, 2
je 0x42c32a
and dword [ebp - 0x98c], 0xfffffffd
lea ecx, [ebp - 0x1c0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 6
mov eax, dword [ebp - 0x98c]
and eax, 1
je 0x42c34e
and dword [ebp - 0x98c], 0xfffffffe
lea ecx, [ebp - 0x1a0]
call fcn.00444890
mov dword [ebp - 0x334], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x334]
jmp 0x42d80a
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
push eax
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 1
push 0
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
je 0x42cc9d
mov edx, dword [ebp + 8]
mov byte [edx + 0x3c], 0
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
and edx, 0xff
cmp edx, 2
jne 0x42c49c
lea eax, [ebp - 0x464]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x448], esp
push 4
push 0x464c88
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xa60], eax
lea ecx, [ebp - 0x444]
call fcn.00401fe0
mov dword [ebp - 0xa64], eax
mov ecx, dword [ebp - 0xa64]
mov dword [ebp - 0xa68], ecx
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x98c]
or edx, 0x100
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0xa68]
call fcn.00402060
mov dword [ebp - 0xa6c], eax
mov eax, dword [ebp - 0xa6c]
mov dword [ebp - 0xa70], eax
mov dword [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x98c]
or ecx, 0x200
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0xa70]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xa74], eax
jmp 0x42c6cd
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
and eax, 0xff
cmp eax, 1
jne 0x42c557
lea ecx, [ebp - 0x4a4]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x488], esp
push 4
push 0x464c90
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xa78], eax
lea ecx, [ebp - 0x484]
call fcn.00401fe0
mov dword [ebp - 0xa7c], eax
mov edx, dword [ebp - 0xa7c]
mov dword [ebp - 0xa80], edx
mov dword [ebp - 4], 0x1c
mov eax, dword [ebp - 0x98c]
or eax, 0x400
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0xa80]
call fcn.004022b0
mov dword [ebp - 0xa84], eax
mov ecx, dword [ebp - 0xa84]
mov dword [ebp - 0xa88], ecx
mov dword [ebp - 4], 0x1d
mov edx, dword [ebp - 0x98c]
or edx, 0x800
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0xa88]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xa8c], eax
jmp 0x42c6c1
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
and ecx, 0xff
cmp ecx, 3
jne 0x42c613
lea edx, [ebp - 0x4e4]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x4c8], esp
push 4
push str._7
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xa90], eax
lea ecx, [ebp - 0x4c4]
call fcn.00401fe0
mov dword [ebp - 0xa94], eax
mov eax, dword [ebp - 0xa94]
mov dword [ebp - 0xa98], eax
mov dword [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x98c]
or ecx, 0x1000
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0xa98]
call fcn.00402060
mov dword [ebp - 0xa9c], eax
mov edx, dword [ebp - 0xa9c]
mov dword [ebp - 0xaa0], edx
mov dword [ebp - 4], 0x1f
mov eax, dword [ebp - 0x98c]
or eax, 0x2000
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0xaa0]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xaa4], eax
jmp 0x42c6b5
lea ecx, [ebp - 0x524]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x508], esp
push 4
push 0x464ca0
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xaa8], eax
lea ecx, [ebp - 0x504]
call fcn.00401fe0
mov dword [ebp - 0xaac], eax
mov edx, dword [ebp - 0xaac]
mov dword [ebp - 0xab0], edx
mov dword [ebp - 4], 0x20
mov eax, dword [ebp - 0x98c]
or eax, 0x4000
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0xab0]
call fcn.004021e0
mov dword [ebp - 0xab4], eax
mov ecx, dword [ebp - 0xab4]
mov dword [ebp - 0xab8], ecx
mov dword [ebp - 4], 0x21
mov edx, dword [ebp - 0x98c]
or edx, 0x8000
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0xab8]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xaa4], eax
mov eax, dword [ebp - 0xaa4]
mov dword [ebp - 0xa8c], eax
mov ecx, dword [ebp - 0xa8c]
mov dword [ebp - 0xa74], ecx
push 0x464c7c
lea ecx, [ebp - 0x350]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xabc], eax
mov edx, dword [ebp - 0xabc]
mov dword [ebp - 0xac0], edx
mov dword [ebp - 4], 0x22
mov eax, dword [ebp - 0xac0]
push eax
lea ecx, [ebp - 0x30]
push ecx
lea edx, [ebp - 0x3ac]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x390], esp
push 2
push 0x464c80
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xac4], eax
lea ecx, [ebp - 0x38c]
call fcn.00401fe0
mov dword [ebp - 0xac8], eax
mov eax, dword [ebp - 0xac8]
mov dword [ebp - 0xacc], eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0xacc]
call fcn.004021e0
mov dword [ebp - 0xad0], eax
mov ecx, dword [ebp - 0xad0]
mov dword [ebp - 0xad4], ecx
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0xad4]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x36c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xad8], eax
mov edx, dword [ebp - 0xad8]
mov dword [ebp - 0xadc], edx
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0xadc]
push eax
mov ecx, dword [ebp + 8]
add ecx, 4
push ecx
lea edx, [ebp - 0x408]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x3ec], esp
push 2
push 0x464c84
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xae0], eax
lea ecx, [ebp - 0x3e8]
call fcn.00401fe0
mov dword [ebp - 0xae4], eax
mov eax, dword [ebp - 0xae4]
mov dword [ebp - 0xae8], eax
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0xae8]
call fcn.00402610
mov dword [ebp - 0xaec], eax
mov ecx, dword [ebp - 0xaec]
mov dword [ebp - 0xaf0], ecx
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0xaf0]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x3c8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xaf4], eax
mov edx, dword [ebp - 0xaf4]
mov dword [ebp - 0xaf8], edx
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0xaf8]
push eax
mov ecx, dword [ebp - 0xa74]
push ecx
lea ecx, [ebp - 0x424]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xafc], eax
mov edx, dword [ebp - 0xafc]
mov dword [ebp - 0xb00], edx
mov byte [ebp - 4], 0x29
mov eax, dword [ebp - 0xb00]
push eax
lea ecx, [ebp - 0x564]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x548], esp
push 0x28
push 0x464ca8
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xb04], eax
lea ecx, [ebp - 0x544]
call fcn.00401fe0
mov dword [ebp - 0xb08], eax
mov edx, dword [ebp - 0xb08]
mov dword [ebp - 0xb0c], edx
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0xb0c]
call fcn.004023f0
mov dword [ebp - 0xb10], eax
mov eax, dword [ebp - 0xb10]
mov dword [ebp - 0xb14], eax
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0xb14]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x580]
push ecx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___char_const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xb18], eax
mov edx, dword [ebp - 0xb18]
mov dword [ebp - 0xb1c], edx
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0xb1c]
push eax
lea ecx, [ebp - 0x59c]
push ecx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xb20], eax
mov edx, dword [ebp - 0xb20]
mov dword [ebp - 0xb24], edx
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp - 0xb24]
push eax
lea ecx, [ebp - 0x5b8]
push ecx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xb28], eax
mov edx, dword [ebp - 0xb28]
mov dword [ebp - 0xb2c], edx
mov byte [ebp - 4], 0x2e
mov eax, dword [ebp - 0xb2c]
push eax
lea ecx, [ebp - 0x5d4]
push ecx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xb30], eax
mov edx, dword [ebp - 0xb30]
mov dword [ebp - 0xb34], edx
mov byte [ebp - 4], 0x2f
mov eax, dword [ebp - 0xb34]
push eax
lea ecx, [ebp - 0x5f0]
push ecx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xb38], eax
mov edx, dword [ebp - 0xb38]
mov dword [ebp - 0xb3c], edx
mov byte [ebp - 4], 0x30
mov eax, dword [ebp - 0xb3c]
push eax
lea ecx, [ebp - 0x60c]
push ecx
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xb40], eax
mov edx, dword [ebp - 0xb40]
mov dword [ebp - 0xb44], edx
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0xb44]
push eax
mov ecx, 0x4712ac
call fcn.00452ca0
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x60c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x5f0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x5d4]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x5b8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x59c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x580]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x564]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x544]
call fcn.00444890
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x424]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x3c8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x408]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x3e8]
call fcn.00444890
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x36c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x3ac]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x38c]
call fcn.00444890
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x350]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x20
mov ecx, dword [ebp - 0x98c]
and ecx, 0x8000
je 0x42cb27
and dword [ebp - 0x98c], 0xffff7fff
lea ecx, [ebp - 0x524]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x1f
mov edx, dword [ebp - 0x98c]
and edx, 0x4000
je 0x42cb51
and dword [ebp - 0x98c], 0xffffbfff
lea ecx, [ebp - 0x504]
call fcn.00444890
mov dword [ebp - 4], 0x1e
mov eax, dword [ebp - 0x98c]
and eax, 0x2000
je 0x42cb7b
and dword [ebp - 0x98c], 0xffffdfff
lea ecx, [ebp - 0x4e4]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x98c]
and ecx, 0x1000
je 0x42cba5
and dword [ebp - 0x98c], 0xffffefff
lea ecx, [ebp - 0x4c4]
call fcn.00444890
mov dword [ebp - 4], 0x1c
mov edx, dword [ebp - 0x98c]
and edx, 0x800
je 0x42cbd0
and dword [ebp - 0x98c], 0xfffff7ff
lea ecx, [ebp - 0x4a4]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x1b
mov eax, dword [ebp - 0x98c]
and eax, 0x400
je 0x42cbf9
and dword [ebp - 0x98c], 0xfffffbff
lea ecx, [ebp - 0x484]
call fcn.00444890
mov dword [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x98c]
and ecx, 0x200
je 0x42cc24
and dword [ebp - 0x98c], 0xfffffdff
lea ecx, [ebp - 0x464]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 6
mov edx, dword [ebp - 0x98c]
and edx, 0x100
je 0x42cc4e
and dword [ebp - 0x98c], 0xfffffeff
lea ecx, [ebp - 0x444]
call fcn.00444890
mov dword [ebp - 0x610], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x610]
jmp 0x42d80a
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x6c]
push ecx
lea edx, [ebp - 0x4c]
push edx
mov eax, dword [ebp - 0x50]
push eax
mov ecx, 0x471110
call fcn.00452e80
sub esp, 0x104
mov ecx, esp
mov dword [ebp - 0x614], esp
push eax
call fcn.0042b8c0
mov dword [ebp - 0xb48], eax
call fcn.00428b50
add esp, 0x110
mov dword [ebp - 0xb4c], eax
cmp dword [ebp - 0xb4c], 0
jne 0x42cd5b
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x618], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x618]
jmp 0x42d80a
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
push eax
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
push 1
push 0
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
je 0x42d668
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
mov ecx, dword [ebp - 0x10]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
and ecx, 0xff
cmp ecx, 2
jne 0x42ce66
lea edx, [ebp - 0x748]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x72c], esp
push 4
push 0x464ce0
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xb50], eax
lea ecx, [ebp - 0x728]
call fcn.00401fe0
mov dword [ebp - 0xb54], eax
mov eax, dword [ebp - 0xb54]
mov dword [ebp - 0xb58], eax
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x98c]
or ecx, 0x10000
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0xb58]
call fcn.004022b0
mov dword [ebp - 0xb5c], eax
mov edx, dword [ebp - 0xb5c]
mov dword [ebp - 0xb60], edx
mov dword [ebp - 4], 0x33
mov eax, dword [ebp - 0x98c]
or eax, 0x20000
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0xb60]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xb64], eax
jmp 0x42d099
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
and edx, 0xff
cmp edx, 1
jne 0x42cf23
lea eax, [ebp - 0x788]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x76c], esp
push 4
push str._01
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xb68], eax
lea ecx, [ebp - 0x768]
call fcn.00401fe0
mov dword [ebp - 0xb6c], eax
mov ecx, dword [ebp - 0xb6c]
mov dword [ebp - 0xb70], ecx
mov dword [ebp - 4], 0x34
mov edx, dword [ebp - 0x98c]
or edx, 0x40000
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0xb70]
call fcn.00402060
mov dword [ebp - 0xb74], eax
mov eax, dword [ebp - 0xb74]
mov dword [ebp - 0xb78], eax
mov dword [ebp - 4], 0x35
mov ecx, dword [ebp - 0x98c]
or ecx, 0x80000
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0xb78]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xb7c], eax
jmp 0x42d08d
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
and eax, 0xff
cmp eax, 3
jne 0x42cfde
lea ecx, [ebp - 0x7c8]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x7ac], esp
push 4
push 0x464cf0
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xb80], eax
lea ecx, [ebp - 0x7a8]
call fcn.00401fe0
mov dword [ebp - 0xb84], eax
mov edx, dword [ebp - 0xb84]
mov dword [ebp - 0xb88], edx
mov dword [ebp - 4], 0x36
mov eax, dword [ebp - 0x98c]
or eax, 0x100000
mov dword [ebp - 0x98c], eax
mov ecx, dword [ebp - 0xb88]
call fcn.004023f0
mov dword [ebp - 0xb8c], eax
mov ecx, dword [ebp - 0xb8c]
mov dword [ebp - 0xb90], ecx
mov dword [ebp - 4], 0x37
mov edx, dword [ebp - 0x98c]
or edx, 0x200000
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0xb90]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xb94], eax
jmp 0x42d081
lea eax, [ebp - 0x808]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x7ec], esp
push 4
push 0x464cf8
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xb98], eax
lea ecx, [ebp - 0x7e8]
call fcn.00401fe0
mov dword [ebp - 0xb9c], eax
mov ecx, dword [ebp - 0xb9c]
mov dword [ebp - 0xba0], ecx
mov dword [ebp - 4], 0x38
mov edx, dword [ebp - 0x98c]
or edx, 0x400000
mov dword [ebp - 0x98c], edx
mov ecx, dword [ebp - 0xba0]
call fcn.00402610
mov dword [ebp - 0xba4], eax
mov eax, dword [ebp - 0xba4]
mov dword [ebp - 0xba8], eax
mov dword [ebp - 4], 0x39
mov ecx, dword [ebp - 0x98c]
or ecx, 0x800000
mov dword [ebp - 0x98c], ecx
mov ecx, dword [ebp - 0xba8]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov dword [ebp - 0xb94], eax
mov edx, dword [ebp - 0xb94]
mov dword [ebp - 0xb7c], edx
mov eax, dword [ebp - 0xb7c]
mov dword [ebp - 0xb64], eax
push 0x464cd4
lea ecx, [ebp - 0x634]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xbac], eax
mov ecx, dword [ebp - 0xbac]
mov dword [ebp - 0xbb0], ecx
mov dword [ebp - 4], 0x3a
mov edx, dword [ebp - 0xbb0]
push edx
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x690]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x674], esp
push 2
push 0x464cd8
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xbb4], eax
lea ecx, [ebp - 0x670]
call fcn.00401fe0
mov dword [ebp - 0xbb8], eax
mov edx, dword [ebp - 0xbb8]
mov dword [ebp - 0xbbc], edx
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0xbbc]
call fcn.004022b0
mov dword [ebp - 0xbc0], eax
mov eax, dword [ebp - 0xbc0]
mov dword [ebp - 0xbc4], eax
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0xbc4]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x650]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xbc8], eax
mov ecx, dword [ebp - 0xbc8]
mov dword [ebp - 0xbcc], ecx
mov byte [ebp - 4], 0x3d
mov edx, dword [ebp - 0xbcc]
push edx
mov eax, dword [ebp + 8]
add eax, 4
push eax
lea ecx, [ebp - 0x6ec]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x6d0], esp
push 2
push 0x464cdc
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xbd0], eax
lea ecx, [ebp - 0x6cc]
call fcn.00401fe0
mov dword [ebp - 0xbd4], eax
mov edx, dword [ebp - 0xbd4]
mov dword [ebp - 0xbd8], edx
mov byte [ebp - 4], 0x3e
mov ecx, dword [ebp - 0xbd8]
call fcn.004021e0
mov dword [ebp - 0xbdc], eax
mov eax, dword [ebp - 0xbdc]
mov dword [ebp - 0xbe0], eax
mov byte [ebp - 4], 0x3f
mov ecx, dword [ebp - 0xbe0]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x6ac]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xbe4], eax
mov ecx, dword [ebp - 0xbe4]
mov dword [ebp - 0xbe8], ecx
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0xbe8]
push edx
mov eax, dword [ebp - 0xb64]
push eax
lea ecx, [ebp - 0x708]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov dword [ebp - 0xbec], eax
mov ecx, dword [ebp - 0xbec]
mov dword [ebp - 0xbf0], ecx
mov byte [ebp - 4], 0x41
mov edx, dword [ebp - 0xbf0]
push edx
lea eax, [ebp - 0x848]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x82c], esp
push 0x28
push 0x464d00
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___unsigned_int_]
mov dword [ebp - 0xbf4], eax
lea ecx, [ebp - 0x828]
call fcn.00401fe0
mov dword [ebp - 0xbf8], eax
mov ecx, dword [ebp - 0xbf8]
mov dword [ebp - 0xbfc], ecx
mov byte [ebp - 4], 0x42
mov ecx, dword [ebp - 0xbfc]
call fcn.004021e0
mov dword [ebp - 0xc00], eax
mov edx, dword [ebp - 0xc00]
mov dword [ebp - 0xc04], edx
mov byte [ebp - 4], 0x43
mov ecx, dword [ebp - 0xc04]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea eax, [ebp - 0x864]
push eax
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___char_const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xc08], eax
mov ecx, dword [ebp - 0xc08]
mov dword [ebp - 0xc0c], ecx
mov byte [ebp - 4], 0x44
mov edx, dword [ebp - 0xc0c]
push edx
lea eax, [ebp - 0x880]
push eax
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xc10], eax
mov ecx, dword [ebp - 0xc10]
mov dword [ebp - 0xc14], ecx
mov byte [ebp - 4], 0x45
mov edx, dword [ebp - 0xc14]
push edx
lea eax, [ebp - 0x89c]
push eax
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xc18], eax
mov ecx, dword [ebp - 0xc18]
mov dword [ebp - 0xc1c], ecx
mov byte [ebp - 4], 0x46
mov edx, dword [ebp - 0xc1c]
push edx
lea eax, [ebp - 0x8b8]
push eax
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xc20], eax
mov ecx, dword [ebp - 0xc20]
mov dword [ebp - 0xc24], ecx
mov byte [ebp - 4], 0x47
mov edx, dword [ebp - 0xc24]
push edx
lea eax, [ebp - 0x8d4]
push eax
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xc28], eax
mov ecx, dword [ebp - 0xc28]
mov dword [ebp - 0xc2c], ecx
mov byte [ebp - 4], 0x48
mov edx, dword [ebp - 0xc2c]
push edx
lea eax, [ebp - 0x8f0]
push eax
call dword [sym.imp.MSVCP90.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
add esp, 0xc
mov dword [ebp - 0xc30], eax
mov ecx, dword [ebp - 0xc30]
mov dword [ebp - 0xc34], ecx
mov byte [ebp - 4], 0x49
mov edx, dword [ebp - 0xc34]
push edx
mov ecx, 0x4712ac
call fcn.00452ca0
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x8f0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x8d4]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x8b8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x89c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x44
lea ecx, [ebp - 0x880]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x864]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x848]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x828]
call fcn.00444890
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x708]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x6ac]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x6ec]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x6cc]
call fcn.00444890
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x650]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x690]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x670]
call fcn.00444890
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x634]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x38
mov eax, dword [ebp - 0x98c]
and eax, 0x800000
je 0x42d4f2
and dword [ebp - 0x98c], 0xff7fffff
lea ecx, [ebp - 0x808]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x37
mov ecx, dword [ebp - 0x98c]
and ecx, 0x400000
je 0x42d51c
and dword [ebp - 0x98c], 0xffbfffff
lea ecx, [ebp - 0x7e8]
call fcn.00444890
mov dword [ebp - 4], 0x36
mov edx, dword [ebp - 0x98c]
and edx, 0x200000
je 0x42d547
and dword [ebp - 0x98c], 0xffdfffff
lea ecx, [ebp - 0x7c8]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x35
mov eax, dword [ebp - 0x98c]
and eax, 0x100000
je 0x42d570
and dword [ebp - 0x98c], 0xffefffff
lea ecx, [ebp - 0x7a8]
call fcn.00444890
mov dword [ebp - 4], 0x34
mov ecx, dword [ebp - 0x98c]
and ecx, 0x80000
je 0x42d59b
and dword [ebp - 0x98c], 0xfff7ffff
lea ecx, [ebp - 0x788]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0x33
mov edx, dword [ebp - 0x98c]
and edx, 0x40000
je 0x42d5c5
and dword [ebp - 0x98c], 0xfffbffff
lea ecx, [ebp - 0x768]
call fcn.00444890
mov dword [ebp - 4], 0x32
mov eax, dword [ebp - 0x98c]
and eax, 0x20000
je 0x42d5ef
and dword [ebp - 0x98c], 0xfffdffff
lea ecx, [ebp - 0x748]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 6
mov ecx, dword [ebp - 0x98c]
and ecx, 0x10000
je 0x42d619
and dword [ebp - 0x98c], 0xfffeffff
lea ecx, [ebp - 0x728]
call fcn.00444890
mov dword [ebp - 0x8f4], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x8f4]
jmp 0x42d80a
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov byte [ebp - 0x8a], 0
mov byte [ebp - 0x89], 0
mov ecx, 0x471194
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.MSVCR90.dll__stricmp]
add esp, 8
test eax, eax
jne 0x42d6aa
mov byte [ebp - 0x8a], 1
mov ecx, dword [ebp + 8]
add ecx, 0x20
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::length_void_const]
test eax, eax
jbe 0x42d6c1
mov byte [ebp - 0x89], 1
movzx eax, byte [ebp - 0x89]
push eax
movzx ecx, byte [ebp - 0x8a]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x978], esp
lea edx, [ebp - 0x6c]
push edx
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov dword [ebp - 0xc38], eax
mov eax, dword [ebp - 0xc38]
mov dword [ebp - 0xc3c], eax
mov byte [ebp - 4], 0x4a
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x97c], esp
lea edx, [ebp - 0x88]
push edx
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov dword [ebp - 0xc40], eax
mov eax, dword [ebp - 0xc40]
mov dword [ebp - 0xc44], eax
mov byte [ebp - 4], 0x4b
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x980], esp
lea edx, [ebp - 0x30]
push edx
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov dword [ebp - 0xc48], eax
mov eax, dword [ebp - 0xc48]
mov dword [ebp - 0xc4c], eax
mov byte [ebp - 4], 0x4c
mov ecx, dword [ebp + 8]
add ecx, 4
sub esp, 0x1c
mov edx, esp
mov dword [ebp - 0x984], esp
push ecx
mov ecx, edx
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov dword [ebp - 0xc50], eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x974]
call fcn.0042d830
mov dword [ebp - 0xc54], eax
mov edx, dword [ebp - 0xc54]
mov dword [ebp - 0xc58], edx
mov byte [ebp - 4], 0x4d
mov eax, dword [ebp - 0xc58]
push eax
mov ecx, 0x471278
call fcn.00452f90
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x974]
call fcn.0042d9e0
mov dword [ebp - 0x988], 1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x30]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x988]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0045ae26
mov esp, ebp
pop ebp
ret