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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x463ad7
mov eax, dword fs:[0]
push eax
sub esp, 0xb9c
mov eax, dword [0x47e0b0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x900], 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 - 0x70]
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 - 0x8c]
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 ecx, 0x47e130
call fcn.00459120
test eax, eax
jne 0x42eaf2
lea eax, [ebp - 0xec]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0xd0], esp
push 0x27
push 0x4707c4
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 - 0x904], eax
lea ecx, [ebp - 0xcc]
call fcn.004024a0
mov dword [ebp - 0x908], eax
mov ecx, dword [ebp - 0x908]
mov dword [ebp - 0x90c], ecx
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x90c]
call fcn.00402730
mov dword [ebp - 0x910], eax
mov edx, dword [ebp - 0x910]
mov dword [ebp - 0x914], edx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x914]
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 - 0xac]
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 - 0xac]
push eax
mov ecx, 0x47e2cc
call fcn.00458f10
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xac]
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 - 0xec]
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 - 0xcc]
call fcn.0044aa80
mov dword [ebp - 0xf0], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x8c]
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 - 0x70]
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 - 0xf0]
jmp 0x4306bc
call dword [sym.imp.MSVCR90.dll_rand]
mov esi, eax
mov ecx, 0x47e130
call fcn.00459120
mov ecx, eax
mov eax, esi
xor edx, edx
div ecx
mov dword [ebp - 0x54], 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 dword [ebp - 0x50], 0
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 0x7c]
cmp eax, 1
jne 0x42eb48
mov ecx, dword [ebp + 8]
add ecx, 0x20
push ecx
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__]
mov dword [ebp - 0x50], 1
jmp 0x42eb63
mov edx, dword [ebp - 0x54]
push edx
mov ecx, 0x47e130
call fcn.00459140
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 eax, [ebp - 0x10]
push eax
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 ecx, dword [ebp + 8]
mov edx, dword [ecx]
push edx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x42f308
push 0
lea eax, [ebp - 0x10]
push eax
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 ecx, dword [ebp + 8]
mov edx, dword [ecx]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
je 0x42f308
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x78]
add ecx, 1
mov edx, dword [ebp + 8]
mov dword [edx + 0x78], ecx
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
and ecx, 0xff
cmp ecx, 2
jne 0x42ec86
lea edx, [ebp - 0x1c4]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1a8], esp
push 4
push 0x4707f4
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 - 0x918], eax
lea ecx, [ebp - 0x1a4]
call fcn.004024a0
mov dword [ebp - 0x91c], eax
mov eax, dword [ebp - 0x91c]
mov dword [ebp - 0x920], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x900]
or ecx, 1
mov dword [ebp - 0x900], ecx
mov ecx, dword [ebp - 0x920]
call fcn.00402910
mov dword [ebp - 0x924], eax
mov edx, dword [ebp - 0x924]
mov dword [ebp - 0x928], edx
mov dword [ebp - 4], 8
mov eax, dword [ebp - 0x900]
or eax, 2
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0x928]
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 - 0x92c], eax
jmp 0x42eeab
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx]
and edx, 0xff
cmp edx, 1
jne 0x42ed3d
lea eax, [ebp - 0x204]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1e8], esp
push 4
push 0x4707fc
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 - 0x930], eax
lea ecx, [ebp - 0x1e4]
call fcn.004024a0
mov dword [ebp - 0x934], eax
mov ecx, dword [ebp - 0x934]
mov dword [ebp - 0x938], ecx
mov dword [ebp - 4], 9
mov edx, dword [ebp - 0x900]
or edx, 4
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0x938]
call fcn.00402b40
mov dword [ebp - 0x93c], eax
mov eax, dword [ebp - 0x93c]
mov dword [ebp - 0x940], eax
mov dword [ebp - 4], 0xa
mov ecx, dword [ebp - 0x900]
or ecx, 8
mov dword [ebp - 0x900], ecx
mov ecx, dword [ebp - 0x940]
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 - 0x944], eax
jmp 0x42ee9f
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
and eax, 0xff
cmp eax, 3
jne 0x42edf3
lea ecx, [ebp - 0x244]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x228], esp
push 4
push 0x470804
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 - 0x948], eax
lea ecx, [ebp - 0x224]
call fcn.004024a0
mov dword [ebp - 0x94c], eax
mov edx, dword [ebp - 0x94c]
mov dword [ebp - 0x950], edx
mov dword [ebp - 4], 0xb
mov eax, dword [ebp - 0x900]
or eax, 0x10
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0x950]
call fcn.00402570
mov dword [ebp - 0x954], eax
mov ecx, dword [ebp - 0x954]
mov dword [ebp - 0x958], ecx
mov dword [ebp - 4], 0xc
mov edx, dword [ebp - 0x900]
or edx, 0x20
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0x958]
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 - 0x95c], eax
jmp 0x42ee93
lea eax, [ebp - 0x284]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x268], esp
push 4
push 0x47080c
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 - 0x960], eax
lea ecx, [ebp - 0x264]
call fcn.004024a0
mov dword [ebp - 0x964], eax
mov ecx, dword [ebp - 0x964]
mov dword [ebp - 0x968], ecx
mov dword [ebp - 4], 0xd
mov edx, dword [ebp - 0x900]
or edx, 0x40
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0x968]
call fcn.00402650
mov dword [ebp - 0x96c], eax
mov eax, dword [ebp - 0x96c]
mov dword [ebp - 0x970], eax
mov dword [ebp - 4], 0xe
mov ecx, dword [ebp - 0x900]
or ecx, 0x80
mov dword [ebp - 0x900], ecx
mov ecx, dword [ebp - 0x970]
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 - 0x95c], eax
mov edx, dword [ebp - 0x95c]
mov dword [ebp - 0x944], edx
mov eax, dword [ebp - 0x944]
mov dword [ebp - 0x92c], eax
push 0x4707ec
lea ecx, [ebp - 0x10c]
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 - 0x974], eax
mov ecx, dword [ebp - 0x974]
mov dword [ebp - 0x978], ecx
mov dword [ebp - 4], 0xf
mov edx, dword [ebp - 0x978]
push edx
mov eax, dword [ebp + 8]
add eax, 4
push eax
lea ecx, [ebp - 0x168]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x14c], esp
push 2
push 0x4707f0
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 - 0x97c], eax
lea ecx, [ebp - 0x148]
call fcn.004024a0
mov dword [ebp - 0x980], eax
mov edx, dword [ebp - 0x980]
mov dword [ebp - 0x984], edx
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x984]
call fcn.00402730
mov dword [ebp - 0x988], eax
mov eax, dword [ebp - 0x988]
mov dword [ebp - 0x98c], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x98c]
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 - 0x128]
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 - 0x990], eax
mov ecx, dword [ebp - 0x990]
mov dword [ebp - 0x994], ecx
mov byte [ebp - 4], 0x12
mov edx, dword [ebp - 0x994]
push edx
mov eax, dword [ebp - 0x92c]
push eax
lea ecx, [ebp - 0x184]
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 - 0x998], eax
mov ecx, dword [ebp - 0x998]
mov dword [ebp - 0x99c], ecx
mov byte [ebp - 4], 0x13
mov edx, dword [ebp - 0x99c]
push edx
lea eax, [ebp - 0x2c4]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2a8], esp
push 0x25
push 0x470814
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 - 0x9a0], eax
lea ecx, [ebp - 0x2a4]
call fcn.004024a0
mov dword [ebp - 0x9a4], eax
mov ecx, dword [ebp - 0x9a4]
mov dword [ebp - 0x9a8], ecx
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x9a8]
call fcn.00402730
mov dword [ebp - 0x9ac], eax
mov edx, dword [ebp - 0x9ac]
mov dword [ebp - 0x9b0], edx
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x9b0]
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 - 0x2e0]
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 - 0x9b4], eax
mov ecx, dword [ebp - 0x9b4]
mov dword [ebp - 0x9b8], ecx
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x9b8]
push edx
lea eax, [ebp - 0x2fc]
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 - 0x9bc], eax
mov ecx, dword [ebp - 0x9bc]
mov dword [ebp - 0x9c0], ecx
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x9c0]
push edx
lea eax, [ebp - 0x318]
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 - 0x9c4], eax
mov ecx, dword [ebp - 0x9c4]
mov dword [ebp - 0x9c8], ecx
mov byte [ebp - 4], 0x18
mov edx, dword [ebp - 0x9c8]
push edx
lea eax, [ebp - 0x334]
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 - 0x9cc], eax
mov ecx, dword [ebp - 0x9cc]
mov dword [ebp - 0x9d0], ecx
mov byte [ebp - 4], 0x19
mov edx, dword [ebp - 0x9d0]
push edx
mov ecx, 0x47e2cc
call fcn.00458f10
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x334]
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 - 0x318]
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 - 0x2fc]
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 - 0x2e0]
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 - 0x2c4]
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 - 0x2a4]
call fcn.0044aa80
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x184]
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 - 0x128]
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 - 0x168]
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 - 0x148]
call fcn.0044aa80
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x10c]
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 eax, dword [ebp - 0x900]
and eax, 0x80
je 0x42f1ba
and dword [ebp - 0x900], 0xffffff7f
lea ecx, [ebp - 0x284]
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 ecx, dword [ebp - 0x900]
and ecx, 0x40
je 0x42f1de
and dword [ebp - 0x900], 0xffffffbf
lea ecx, [ebp - 0x264]
call fcn.0044aa80
mov dword [ebp - 4], 0xb
mov edx, dword [ebp - 0x900]
and edx, 0x20
je 0x42f203
and dword [ebp - 0x900], 0xffffffdf
lea ecx, [ebp - 0x244]
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 eax, dword [ebp - 0x900]
and eax, 0x10
je 0x42f227
and dword [ebp - 0x900], 0xffffffef
lea ecx, [ebp - 0x224]
call fcn.0044aa80
mov dword [ebp - 4], 9
mov ecx, dword [ebp - 0x900]
and ecx, 8
je 0x42f24c
and dword [ebp - 0x900], 0xfffffff7
lea ecx, [ebp - 0x204]
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 edx, dword [ebp - 0x900]
and edx, 4
je 0x42f270
and dword [ebp - 0x900], 0xfffffffb
lea ecx, [ebp - 0x1e4]
call fcn.0044aa80
mov dword [ebp - 4], 7
mov eax, dword [ebp - 0x900]
and eax, 2
je 0x42f295
and dword [ebp - 0x900], 0xfffffffd
lea ecx, [ebp - 0x1c4]
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 - 0x900]
and ecx, 1
je 0x42f2b9
and dword [ebp - 0x900], 0xfffffffe
lea ecx, [ebp - 0x1a4]
call fcn.0044aa80
mov dword [ebp - 0x338], 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 - 0x8c]
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 - 0x70]
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 - 0x338]
jmp 0x4306bc
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 edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
je 0x42fc10
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x78]
add ecx, 1
mov edx, dword [ebp + 8]
mov dword [edx + 0x78], ecx
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 0x42f40f
lea eax, [ebp - 0x468]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x44c], esp
push 4
push 0x470848
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 - 0x448]
call fcn.004024a0
mov dword [ebp - 0x9d8], eax
mov ecx, dword [ebp - 0x9d8]
mov dword [ebp - 0x9dc], ecx
mov byte [ebp - 4], 0x1a
mov edx, dword [ebp - 0x900]
or edx, 0x100
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0x9dc]
call fcn.00402650
mov dword [ebp - 0x9e0], eax
mov eax, dword [ebp - 0x9e0]
mov dword [ebp - 0x9e4], eax
mov dword [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x900]
or ecx, 0x200
mov dword [ebp - 0x900], 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 0x42f640
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
and eax, 0xff
cmp eax, 1
jne 0x42f4ca
lea ecx, [ebp - 0x4a8]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x48c], esp
push 4
push 0x470850
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 - 0x488]
call fcn.004024a0
mov dword [ebp - 0x9f0], eax
mov edx, dword [ebp - 0x9f0]
mov dword [ebp - 0x9f4], edx
mov dword [ebp - 4], 0x1c
mov eax, dword [ebp - 0x900]
or eax, 0x400
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0x9f4]
call fcn.00402730
mov dword [ebp - 0x9f8], eax
mov ecx, dword [ebp - 0x9f8]
mov dword [ebp - 0x9fc], ecx
mov dword [ebp - 4], 0x1d
mov edx, dword [ebp - 0x900]
or edx, 0x800
mov dword [ebp - 0x900], edx
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 - 0xa00], eax
jmp 0x42f634
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
and ecx, 0xff
cmp ecx, 3
jne 0x42f586
lea edx, [ebp - 0x4e8]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x4cc], esp
push 4
push 0x470858
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 - 0xa04], eax
lea ecx, [ebp - 0x4c8]
call fcn.004024a0
mov dword [ebp - 0xa08], eax
mov eax, dword [ebp - 0xa08]
mov dword [ebp - 0xa0c], eax
mov dword [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x900]
or ecx, 0x1000
mov dword [ebp - 0x900], ecx
mov ecx, dword [ebp - 0xa0c]
call fcn.00402650
mov dword [ebp - 0xa10], eax
mov edx, dword [ebp - 0xa10]
mov dword [ebp - 0xa14], edx
mov dword [ebp - 4], 0x1f
mov eax, dword [ebp - 0x900]
or eax, 0x2000
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0xa14]
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 - 0xa18], eax
jmp 0x42f628
lea ecx, [ebp - 0x528]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x50c], esp
push 4
push 0x470860
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 - 0xa1c], eax
lea ecx, [ebp - 0x508]
call fcn.004024a0
mov dword [ebp - 0xa20], eax
mov edx, dword [ebp - 0xa20]
mov dword [ebp - 0xa24], edx
mov dword [ebp - 4], 0x20
mov eax, dword [ebp - 0x900]
or eax, 0x4000
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0xa24]
call fcn.00402b40
mov dword [ebp - 0xa28], eax
mov ecx, dword [ebp - 0xa28]
mov dword [ebp - 0xa2c], ecx
mov dword [ebp - 4], 0x21
mov edx, dword [ebp - 0x900]
or edx, 0x8000
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0xa2c]
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 - 0xa18], eax
mov eax, dword [ebp - 0xa18]
mov dword [ebp - 0xa00], eax
mov ecx, dword [ebp - 0xa00]
mov dword [ebp - 0x9e8], ecx
push 0x47083c
lea ecx, [ebp - 0x354]
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 - 0xa30], eax
mov edx, dword [ebp - 0xa30]
mov dword [ebp - 0xa34], edx
mov dword [ebp - 4], 0x22
mov eax, dword [ebp - 0xa34]
push eax
lea ecx, [ebp - 0x30]
push ecx
lea edx, [ebp - 0x3b0]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x394], esp
push 2
push 0x470840
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 - 0xa38], eax
lea ecx, [ebp - 0x390]
call fcn.004024a0
mov dword [ebp - 0xa3c], eax
mov eax, dword [ebp - 0xa3c]
mov dword [ebp - 0xa40], eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0xa40]
call fcn.00402b40
mov dword [ebp - 0xa44], eax
mov ecx, dword [ebp - 0xa44]
mov dword [ebp - 0xa48], ecx
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0xa48]
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 - 0x370]
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 - 0xa4c], eax
mov edx, dword [ebp - 0xa4c]
mov dword [ebp - 0xa50], edx
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0xa50]
push eax
mov ecx, dword [ebp + 8]
add ecx, 4
push ecx
lea edx, [ebp - 0x40c]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x3f0], esp
push 2
push 0x470844
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 - 0xa54], eax
lea ecx, [ebp - 0x3ec]
call fcn.004024a0
mov dword [ebp - 0xa58], eax
mov eax, dword [ebp - 0xa58]
mov dword [ebp - 0xa5c], eax
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0xa5c]
call fcn.00402650
mov dword [ebp - 0xa60], eax
mov ecx, dword [ebp - 0xa60]
mov dword [ebp - 0xa64], ecx
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0xa64]
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 - 0x3cc]
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 - 0xa68], eax
mov edx, dword [ebp - 0xa68]
mov dword [ebp - 0xa6c], edx
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0xa6c]
push eax
mov ecx, dword [ebp - 0x9e8]
push ecx
lea ecx, [ebp - 0x428]
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 - 0xa70], eax
mov edx, dword [ebp - 0xa70]
mov dword [ebp - 0xa74], edx
mov byte [ebp - 4], 0x29
mov eax, dword [ebp - 0xa74]
push eax
lea ecx, [ebp - 0x568]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x54c], esp
push 0x28
push 0x470868
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 - 0x548]
call fcn.004024a0
mov dword [ebp - 0xa7c], eax
mov edx, dword [ebp - 0xa7c]
mov dword [ebp - 0xa80], edx
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0xa80]
call fcn.00402910
mov dword [ebp - 0xa84], eax
mov eax, dword [ebp - 0xa84]
mov dword [ebp - 0xa88], eax
mov byte [ebp - 4], 0x2b
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]
push eax
lea ecx, [ebp - 0x584]
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 - 0xa8c], eax
mov edx, dword [ebp - 0xa8c]
mov dword [ebp - 0xa90], edx
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0xa90]
push eax
lea ecx, [ebp - 0x5a0]
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 - 0xa94], eax
mov edx, dword [ebp - 0xa94]
mov dword [ebp - 0xa98], edx
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp - 0xa98]
push eax
lea ecx, [ebp - 0x5bc]
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 - 0xa9c], eax
mov edx, dword [ebp - 0xa9c]
mov dword [ebp - 0xaa0], edx
mov byte [ebp - 4], 0x2e
mov eax, dword [ebp - 0xaa0]
push eax
lea ecx, [ebp - 0x5d8]
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 - 0xaa4], eax
mov edx, dword [ebp - 0xaa4]
mov dword [ebp - 0xaa8], edx
mov byte [ebp - 4], 0x2f
mov eax, dword [ebp - 0xaa8]
push eax
lea ecx, [ebp - 0x5f4]
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 - 0xaac], eax
mov edx, dword [ebp - 0xaac]
mov dword [ebp - 0xab0], edx
mov byte [ebp - 4], 0x30
mov eax, dword [ebp - 0xab0]
push eax
lea ecx, [ebp - 0x610]
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 - 0xab4], eax
mov edx, dword [ebp - 0xab4]
mov dword [ebp - 0xab8], edx
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0xab8]
push eax
mov ecx, 0x47e2cc
call fcn.00458f10
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x610]
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 - 0x5f4]
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 - 0x5d8]
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 - 0x5bc]
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 - 0x5a0]
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 - 0x584]
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 - 0x568]
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 - 0x548]
call fcn.0044aa80
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x428]
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 - 0x3cc]
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 - 0x40c]
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 - 0x3ec]
call fcn.0044aa80
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x370]
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 - 0x3b0]
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 - 0x390]
call fcn.0044aa80
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x354]
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 - 0x900]
and ecx, 0x8000
je 0x42fa9a
and dword [ebp - 0x900], 0xffff7fff
lea ecx, [ebp - 0x528]
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 - 0x900]
and edx, 0x4000
je 0x42fac4
and dword [ebp - 0x900], 0xffffbfff
lea ecx, [ebp - 0x508]
call fcn.0044aa80
mov dword [ebp - 4], 0x1e
mov eax, dword [ebp - 0x900]
and eax, 0x2000
je 0x42faee
and dword [ebp - 0x900], 0xffffdfff
lea ecx, [ebp - 0x4e8]
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 - 0x900]
and ecx, 0x1000
je 0x42fb18
and dword [ebp - 0x900], 0xffffefff
lea ecx, [ebp - 0x4c8]
call fcn.0044aa80
mov dword [ebp - 4], 0x1c
mov edx, dword [ebp - 0x900]
and edx, 0x800
je 0x42fb43
and dword [ebp - 0x900], 0xfffff7ff
lea ecx, [ebp - 0x4a8]
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 - 0x900]
and eax, 0x400
je 0x42fb6c
and dword [ebp - 0x900], 0xfffffbff
lea ecx, [ebp - 0x488]
call fcn.0044aa80
mov dword [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x900]
and ecx, 0x200
je 0x42fb97
and dword [ebp - 0x900], 0xfffffdff
lea ecx, [ebp - 0x468]
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 - 0x900]
and edx, 0x100
je 0x42fbc1
and dword [ebp - 0x900], 0xfffffeff
lea ecx, [ebp - 0x448]
call fcn.0044aa80
mov dword [ebp - 0x614], 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 - 0x8c]
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 - 0x70]
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 - 0x614]
jmp 0x4306bc
mov eax, dword [ebp - 0x50]
push eax
lea ecx, [ebp - 0x8c]
push ecx
lea edx, [ebp - 0x70]
push edx
lea eax, [ebp - 0x4c]
push eax
mov ecx, dword [ebp - 0x54]
push ecx
mov ecx, 0x47e130
call fcn.00459140
sub esp, 0x104
mov ecx, esp
mov dword [ebp - 0x618], esp
push eax
call fcn.004306e0
mov dword [ebp - 0xabc], eax
call fcn.0042d910
add esp, 0x114
mov dword [ebp - 0xac0], eax
cmp dword [ebp - 0xac0], 0
jne 0x42fcd2
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 edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x61c], 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 - 0x8c]
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 - 0x70]
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 - 0x61c]
jmp 0x4306bc
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 0x4305ee
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x78]
add eax, 1
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x78], eax
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 edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
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 0x42fded
lea eax, [ebp - 0x74c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x730], esp
push 4
push 0x4708a0
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 - 0x72c]
call fcn.004024a0
mov dword [ebp - 0xac8], eax
mov ecx, dword [ebp - 0xac8]
mov dword [ebp - 0xacc], ecx
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x900]
or edx, 0x10000
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0xacc]
call fcn.00402650
mov dword [ebp - 0xad0], eax
mov eax, dword [ebp - 0xad0]
mov dword [ebp - 0xad4], eax
mov dword [ebp - 4], 0x33
mov ecx, dword [ebp - 0x900]
or ecx, 0x20000
mov dword [ebp - 0x900], ecx
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]
mov dword [ebp - 0xad8], eax
jmp 0x43001e
mov edx, dword [ebp + 8]
movsx eax, byte [edx]
and eax, 0xff
cmp eax, 1
jne 0x42fea8
lea ecx, [ebp - 0x78c]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x770], esp
push 4
push 0x4708a8
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 - 0xadc], eax
lea ecx, [ebp - 0x76c]
call fcn.004024a0
mov dword [ebp - 0xae0], eax
mov edx, dword [ebp - 0xae0]
mov dword [ebp - 0xae4], edx
mov dword [ebp - 4], 0x34
mov eax, dword [ebp - 0x900]
or eax, 0x40000
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0xae4]
call fcn.00402730
mov dword [ebp - 0xae8], eax
mov ecx, dword [ebp - 0xae8]
mov dword [ebp - 0xaec], ecx
mov dword [ebp - 4], 0x35
mov edx, dword [ebp - 0x900]
or edx, 0x80000
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0xaec]
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 - 0xaf0], eax
jmp 0x430012
mov eax, dword [ebp + 8]
movsx ecx, byte [eax]
and ecx, 0xff
cmp ecx, 3
jne 0x42ff64
lea edx, [ebp - 0x7cc]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x7b0], esp
push 4
push 0x4708b0
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 - 0xaf4], eax
lea ecx, [ebp - 0x7ac]
call fcn.004024a0
mov dword [ebp - 0xaf8], eax
mov eax, dword [ebp - 0xaf8]
mov dword [ebp - 0xafc], eax
mov dword [ebp - 4], 0x36
mov ecx, dword [ebp - 0x900]
or ecx, 0x100000
mov dword [ebp - 0x900], ecx
mov ecx, dword [ebp - 0xafc]
call fcn.00402b40
mov dword [ebp - 0xb00], eax
mov edx, dword [ebp - 0xb00]
mov dword [ebp - 0xb04], edx
mov dword [ebp - 4], 0x37
mov eax, dword [ebp - 0x900]
or eax, 0x200000
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0xb04]
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 - 0xb08], eax
jmp 0x430006
lea ecx, [ebp - 0x80c]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x7f0], esp
push 4
push 0x4708b8
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 - 0xb0c], eax
lea ecx, [ebp - 0x7ec]
call fcn.004024a0
mov dword [ebp - 0xb10], eax
mov edx, dword [ebp - 0xb10]
mov dword [ebp - 0xb14], edx
mov dword [ebp - 4], 0x38
mov eax, dword [ebp - 0x900]
or eax, 0x400000
mov dword [ebp - 0x900], eax
mov ecx, dword [ebp - 0xb14]
call fcn.00402650
mov dword [ebp - 0xb18], eax
mov ecx, dword [ebp - 0xb18]
mov dword [ebp - 0xb1c], ecx
mov dword [ebp - 4], 0x39
mov edx, dword [ebp - 0x900]
or edx, 0x800000
mov dword [ebp - 0x900], edx
mov ecx, dword [ebp - 0xb1c]
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 - 0xb08], eax
mov eax, dword [ebp - 0xb08]
mov dword [ebp - 0xaf0], eax
mov ecx, dword [ebp - 0xaf0]
mov dword [ebp - 0xad8], ecx
push 0x470894
lea ecx, [ebp - 0x638]
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 - 0xb20], eax
mov edx, dword [ebp - 0xb20]
mov dword [ebp - 0xb24], edx
mov dword [ebp - 4], 0x3a
mov eax, dword [ebp - 0xb24]
push eax
lea ecx, [ebp - 0x30]
push ecx
lea edx, [ebp - 0x694]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x678], esp
push 2
push 0x470898
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 - 0xb28], eax
lea ecx, [ebp - 0x674]
call fcn.004024a0
mov dword [ebp - 0xb2c], eax
mov eax, dword [ebp - 0xb2c]
mov dword [ebp - 0xb30], eax
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0xb30]
call fcn.00402910
mov dword [ebp - 0xb34], eax
mov ecx, dword [ebp - 0xb34]
mov dword [ebp - 0xb38], ecx
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0xb38]
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 - 0x654]
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 - 0xb3c], eax
mov edx, dword [ebp - 0xb3c]
mov dword [ebp - 0xb40], edx
mov byte [ebp - 4], 0x3d
mov eax, dword [ebp - 0xb40]
push eax
mov ecx, dword [ebp + 8]
add ecx, 4
push ecx
lea edx, [ebp - 0x6f0]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x6d4], esp
push 2
push 0x47089c
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 - 0xb44], eax
lea ecx, [ebp - 0x6d0]
call fcn.004024a0
mov dword [ebp - 0xb48], eax
mov eax, dword [ebp - 0xb48]
mov dword [ebp - 0xb4c], eax
mov byte [ebp - 4], 0x3e
mov ecx, dword [ebp - 0xb4c]
call fcn.00402b40
mov dword [ebp - 0xb50], eax
mov ecx, dword [ebp - 0xb50]
mov dword [ebp - 0xb54], ecx
mov byte [ebp - 4], 0x3f
mov ecx, dword [ebp - 0xb54]
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 - 0x6b0]
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 - 0xb58], eax
mov edx, dword [ebp - 0xb58]
mov dword [ebp - 0xb5c], edx
mov byte [ebp - 4], 0x40
mov eax, dword [ebp - 0xb5c]
push eax
mov ecx, dword [ebp - 0xad8]
push ecx
lea ecx, [ebp - 0x70c]
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 - 0xb60], eax
mov edx, dword [ebp - 0xb60]
mov dword [ebp - 0xb64], edx
mov byte [ebp - 4], 0x41
mov eax, dword [ebp - 0xb64]
push eax
lea ecx, [ebp - 0x84c]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x830], esp
push 0x28
push 0x4708c0
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 - 0x82c]
call fcn.004024a0
mov dword [ebp - 0xb6c], eax
mov edx, dword [ebp - 0xb6c]
mov dword [ebp - 0xb70], edx
mov byte [ebp - 4], 0x42
mov ecx, dword [ebp - 0xb70]
call fcn.00402570
mov dword [ebp - 0xb74], eax
mov eax, dword [ebp - 0xb74]
mov dword [ebp - 0xb78], eax
mov byte [ebp - 4], 0x43
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]
push eax
lea ecx, [ebp - 0x868]
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 - 0xb7c], eax
mov edx, dword [ebp - 0xb7c]
mov dword [ebp - 0xb80], edx
mov byte [ebp - 4], 0x44
mov eax, dword [ebp - 0xb80]
push eax
lea ecx, [ebp - 0x884]
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 - 0xb84], eax
mov edx, dword [ebp - 0xb84]
mov dword [ebp - 0xb88], edx
mov byte [ebp - 4], 0x45
mov eax, dword [ebp - 0xb88]
push eax
lea ecx, [ebp - 0x8a0]
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 - 0xb8c], eax
mov edx, dword [ebp - 0xb8c]
mov dword [ebp - 0xb90], edx
mov byte [ebp - 4], 0x46
mov eax, dword [ebp - 0xb90]
push eax
lea ecx, [ebp - 0x8bc]
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 - 0xb94], eax
mov edx, dword [ebp - 0xb94]
mov dword [ebp - 0xb98], edx
mov byte [ebp - 4], 0x47
mov eax, dword [ebp - 0xb98]
push eax
lea ecx, [ebp - 0x8d8]
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 - 0xb9c], eax
mov edx, dword [ebp - 0xb9c]
mov dword [ebp - 0xba0], edx
mov byte [ebp - 4], 0x48
mov eax, dword [ebp - 0xba0]
push eax
lea ecx, [ebp - 0x8f4]
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 - 0xba4], eax
mov edx, dword [ebp - 0xba4]
mov dword [ebp - 0xba8], edx
mov byte [ebp - 4], 0x49
mov eax, dword [ebp - 0xba8]
push eax
mov ecx, 0x47e2cc
call fcn.00458f10
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x8f4]
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 - 0x8d8]
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 - 0x8bc]
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 - 0x8a0]
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 - 0x884]
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 - 0x868]
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 - 0x84c]
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 - 0x82c]
call fcn.0044aa80
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x70c]
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 - 0x6b0]
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 - 0x6f0]
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 - 0x6d0]
call fcn.0044aa80
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x654]
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 - 0x694]
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 - 0x674]
call fcn.0044aa80
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x638]
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 ecx, dword [ebp - 0x900]
and ecx, 0x800000
je 0x430478
and dword [ebp - 0x900], 0xff7fffff
lea ecx, [ebp - 0x80c]
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 edx, dword [ebp - 0x900]
and edx, 0x400000
je 0x4304a2
and dword [ebp - 0x900], 0xffbfffff
lea ecx, [ebp - 0x7ec]
call fcn.0044aa80
mov dword [ebp - 4], 0x36
mov eax, dword [ebp - 0x900]
and eax, 0x200000
je 0x4304cc
and dword [ebp - 0x900], 0xffdfffff
lea ecx, [ebp - 0x7cc]
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 ecx, dword [ebp - 0x900]
and ecx, 0x100000
je 0x4304f6
and dword [ebp - 0x900], 0xffefffff
lea ecx, [ebp - 0x7ac]
call fcn.0044aa80
mov dword [ebp - 4], 0x34
mov edx, dword [ebp - 0x900]
and edx, 0x80000
je 0x430521
and dword [ebp - 0x900], 0xfff7ffff
lea ecx, [ebp - 0x78c]
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 eax, dword [ebp - 0x900]
and eax, 0x40000
je 0x43054a
and dword [ebp - 0x900], 0xfffbffff
lea ecx, [ebp - 0x76c]
call fcn.0044aa80
mov dword [ebp - 4], 0x32
mov ecx, dword [ebp - 0x900]
and ecx, 0x20000
je 0x430575
and dword [ebp - 0x900], 0xfffdffff
lea ecx, [ebp - 0x74c]
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 - 0x900]
and edx, 0x10000
je 0x43059f
and dword [ebp - 0x900], 0xfffeffff
lea ecx, [ebp - 0x72c]
call fcn.0044aa80
mov dword [ebp - 0x8f8], 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 - 0x8c]
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 - 0x70]
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 - 0x8f8]
jmp 0x4306bc
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov byte [ebp - 0x8d], 0
mov ecx, 0x47e1b4
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 0x430629
mov byte [ebp - 0x8d], 1
lea ecx, [ebp - 0x30]
push ecx
mov ecx, dword [ebp + 8]
add ecx, 0x20
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 edx, [ebp - 0x8c]
push edx
mov ecx, dword [ebp + 8]
add ecx, 0x3c
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 eax, [ebp - 0x70]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x58
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__]
mov ecx, dword [ebp + 8]
mov dl, byte [ebp - 0x8d]
mov byte [ecx + 0x74], dl
mov eax, dword [ebp + 8]
mov dword [eax + 0x78], 0
mov dword [ebp - 0x8fc], 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 - 0x8c]
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 - 0x70]
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 - 0x8fc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00462030
mov esp, ebp
pop ebp
ret