Function at 0x40c090
Capabilities:
Delete registry value

Disassembly:
push 0xffffffffffffffff
push 0x442c42
mov eax, dword fs:[0]
push eax
sub esp, 0x1f0
mov eax, dword [0x4513e0]
xor eax, esp
mov dword [esp + 0x1e8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4513e0]
xor eax, esp
push eax
lea eax, [esp + 0x204]
mov dword fs:[0], eax
mov eax, dword [esp + 0x214]
mov esi, ecx
xor ebx, ebx
mov dword [esp + 0x18], eax
mov dword [esp + 0x5c], esi
mov dword [esp + 0x70], ebx
lea ecx, [esp + 0x94]
push ecx
mov dword [esp + 0x210], ebx
call fcn.00405630
lea edx, [esp + 0x11c]
push edx
push esi
mov ecx, 0x44724c
mov byte [esp + 0x214], 1
call fcn.00408280
lea eax, [esp + 0x11c]
mov byte [esp + 0x20c], 2
call fcn.004275c0
lea eax, [esp + 0x170]
push eax
push esi
mov ecx, 0x4477d8
call fcn.00408280
lea eax, [esp + 0x170]
mov byte [esp + 0x20c], 3
call fcn.004274b0
lea ecx, [esp + 0x138]
push ecx
push esi
mov ecx, str.path
call fcn.00408280
lea edx, [esp + 0x154]
push edx
push esi
mov ecx, 0x4477e4
mov byte [esp + 0x214], 4
call fcn.00408280
lea eax, [esp + 0x1c4]
push eax
push esi
mov ecx, str.data
mov byte [esp + 0x214], 5
call fcn.00408280
lea ecx, [esp + 0x1a8]
push ecx
push esi
mov ecx, str.type
mov byte [esp + 0x214], 6
call fcn.00408280
lea eax, [esp + 0x1a8]
mov byte [esp + 0x20c], 7
call fcn.004275c0
lea edx, [esp + 0x18c]
push edx
push esi
mov ecx, 0x447808
call fcn.00408280
lea eax, [esp + 0x1e0]
push eax
push esi
mov ecx, 0x447594
mov byte [esp + 0x214], 8
call fcn.00408280
lea eax, [esp + 0x1e0]
mov byte [esp + 0x20c], 9
call fcn.004274b0
mov eax, dword [esp + 0x1a0]
push 0x447814
mov edi, 2
lea ecx, [esp + 0x190]
call fcn.00404360
lea ecx, [esp + 0x138]
push ecx
push ecx
push 0x44781c
mov ebp, eax
push ecx
lea edx, [esp + 0x180]
neg ebp
push edx
lea eax, [esp + 0xb0]
sbb ebp, ebp
push eax
add ebp, 1
call fcn.004069e0
add esp, 0xc
push eax
call fcn.00406c60
add esp, 0xc
push eax
call fcn.004069e0
add esp, 8
cmp dword [esp + 0x168], ebx
je 0x40c2d7
lea ecx, [esp + 0x1a8]
push ecx
push ecx
push 0x447820
push ecx
lea edx, [esp + 0x1d4]
push edx
push ecx
push 0x447040
push ecx
lea eax, [esp + 0x174]
push eax
push ecx
lea ecx, [esp + 0xc4]
push 0x44781c
push ecx
call fcn.00406c60
add esp, 0xc
push eax
call fcn.004069e0
add esp, 0xc
push eax
call fcn.00406c60
add esp, 0xc
push eax
call fcn.004069e0
add esp, 0xc
push eax
call fcn.00406c60
add esp, 0xc
push eax
call fcn.004069e0
add esp, 8
mov esi, dword [esi + 4]
push esi
push str.Registry
push str.__s____d_
push 0x4524d8
xor eax, eax
call fcn.0041eee0
mov eax, dword [esp + 0x194]
add dword [0x4524f8], 1
add esp, 0x10
push 0x447824
mov edi, 4
lea ecx, [esp + 0x174]
call fcn.00404360
test eax, eax
jne 0x40c326
mov dword [esp + 0x58], 0x80000002
jmp 0x40c374
mov eax, dword [esp + 0x184]
push str.HKCU
lea ecx, [esp + 0x174]
call fcn.00404360
test eax, eax
jne 0x40c34c
mov dword [esp + 0x58], 0x80000001
jmp 0x40c374
mov eax, dword [esp + 0x184]
push str.HKCR
lea ecx, [esp + 0x174]
call fcn.00404360
test eax, eax
jne 0x40ceb6
mov dword [esp + 0x58], 0x80000000
mov eax, dword [esp + 0x130]
push str.create
mov edi, 6
lea ecx, [esp + 0x120]
call fcn.00404360
test eax, eax
je 0x40c63a
mov eax, dword [esp + 0x130]
push str.createonly
mov edi, 0xa
lea ecx, [esp + 0x120]
call fcn.00404360
test eax, eax
je 0x40c63a
mov eax, dword [esp + 0x130]
push str.deleteoninstall
mov edi, 0xf
lea ecx, [esp + 0x120]
call fcn.00404360
test eax, eax
jne 0x40c5c4
lea ecx, [esp + 0x3c]
lea eax, [esp + 0x94]
call fcn.00405770
mov byte [esp + 0x20c], 0xc
cmp dword [eax + 0x18], 8
jb 0x40c406
mov eax, dword [eax + 4]
jmp 0x40c409
add eax, 4
mov ebx, eax
mov ecx, 0xbbf
call fcn.00425dd0
mov bl, 9
mov edi, 8
mov byte [esp + 0x20c], bl
cmp dword [esp + 0x54], edi
jb 0x40c436
mov edx, dword [esp + 0x40]
push edx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x168], 0
lea ecx, [esp + 0x78]
lea eax, [esp + 0x94]
jne 0x40c4e0
call fcn.00405770
mov byte [esp + 0x20c], 0xd
cmp dword [eax + 0x18], edi
jb 0x40c466
mov eax, dword [eax + 4]
jmp 0x40c469
add eax, 4
push eax
push str.Deleting_Key___s
push 0x4524d8
xor eax, eax
call fcn.0041eee0
add esp, 0xc
lea esi, [esp + 0x78]
mov byte [esp + 0x20c], bl
call fcn.0041fb60
mov eax, dword [esp + 0x18]
cmp byte [eax + 0x3c], 0
jne 0x40c7c9
cmp dword [esp + 0x150], 8
mov edi, dword [esp + 0x13c]
jae 0x40c4b4
lea edi, [esp + 0x13c]
mov esi, 0x44792c
lea ecx, [esp + 0x1e0]
call fcn.00419e40
mov edx, dword [esp + 0x58]
movzx ecx, al
push ecx
mov eax, ebp
mov ecx, edi
call fcn.0041f620
add esp, 4
mov edi, eax
jmp 0x40c584
call fcn.00405770
mov byte [esp + 0x20c], 0xe
cmp dword [eax + 0x18], edi
jb 0x40c4f7
mov eax, dword [eax + 4]
jmp 0x40c4fa
add eax, 4
push eax
push str.Deleting_value___s
push 0x4524d8
xor eax, eax
call fcn.0041eee0
add esp, 0xc
lea esi, [esp + 0x78]
mov byte [esp + 0x20c], bl
call fcn.0041fb60
cmp dword [esp + 0x150], edi
mov edi, dword [esp + 0x13c]
jae 0x40c536
lea edi, [esp + 0x13c]
mov ebx, dword [esp + 0x58]
push 1
push ebp
lea esi, [esp + 0x78]
call fcn.0041f2a0
mov edi, eax
test edi, edi
jne 0x40c58c
mov edx, dword [esp + 0x18]
cmp byte [edx + 0x3c], al
jne 0x40c57b
cmp dword [esp + 0x16c], 8
mov eax, dword [esp + 0x158]
jae 0x40c56d
lea eax, [esp + 0x158]
push eax
mov eax, dword [esp + 0x74]
push eax
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov edi, eax
lea esi, [esp + 0x70]
call fcn.0041f330
test edi, edi
je 0x40c7c9
cmp edi, 2
je 0x40c7c9
mov eax, dword [esp + 0x18]
mov cl, byte [eax + 0x3d]
neg cl
push edi
push str.Error_0x_X_while_deleting
push 0x4524d8
sbb ecx, ecx
not ecx
and ecx, edi
mov dword [eax + 0x38], ecx
mov eax, 2
call fcn.0041eee0
add esp, 0xc
jmp 0x40c7c9
mov eax, dword [esp + 0x130]
push str.deleteonuninstall
mov edi, 0x11
lea ecx, [esp + 0x120]
call fcn.00404360
test eax, eax
jne 0x40c7cb
lea ecx, [esp + 0x78]
lea eax, [esp + 0x94]
call fcn.00405770
mov byte [esp + 0x20c], 0xf
cmp dword [eax + 0x18], 8
jb 0x40c60c
mov eax, dword [eax + 4]
jmp 0x40c60f
add eax, 4
push eax
push str.Marking_registry_value__s_for_deletion_during_uninstallation
push 0x4524d8
xor eax, eax
call fcn.0041eee0
add esp, 0xc
lea esi, [esp + 0x78]
mov byte [esp + 0x20c], 9
call fcn.0041fb60
jmp 0x40c7cb
lea ecx, [esp + 0x3c]
lea eax, [esp + 0x94]
call fcn.00405770
mov esi, 8
mov byte [esp + 0x20c], 0xa
cmp dword [eax + 0x18], esi
jb 0x40c661
mov eax, dword [eax + 4]
jmp 0x40c664
add eax, 4
push eax
push str.Adding_registry_value___s
push 0x4524d8
xor eax, eax
call fcn.0041eee0
add esp, 0xc
mov byte [esp + 0x20c], 9
cmp dword [esp + 0x54], esi
jb 0x40c694
mov edx, dword [esp + 0x40]
push edx
call fcn.00429d64
add esp, 4
lea ecx, [esp + 0x3c]
lea eax, [esp + 0x94]
call fcn.00405770
mov byte [esp + 0x20c], 0xb
cmp dword [eax + 0x18], esi
jb 0x40c6b6
mov eax, dword [eax + 4]
jmp 0x40c6b9
add eax, 4
mov ebx, eax
mov ecx, 0xbb9
call fcn.00425dd0
mov byte [esp + 0x20c], 9
cmp dword [esp + 0x54], 8
jb 0x40c6e1
mov eax, dword [esp + 0x40]
push eax
call fcn.00429d64
add esp, 4
mov ecx, dword [esp + 0x18]
cmp byte [ecx + 0x3c], 0
jne 0x40c7c9
mov edi, dword [esp + 0x190]
mov eax, 8
cmp dword [esp + 0x1a4], eax
jae 0x40c70b
lea edi, [esp + 0x190]
cmp dword [esp + 0x1c0], eax
mov esi, dword [esp + 0x1ac]
jae 0x40c722
lea esi, [esp + 0x1ac]
cmp dword [esp + 0x1dc], eax
mov ecx, dword [esp + 0x1c8]
jae 0x40c739
lea ecx, [esp + 0x1c8]
cmp dword [esp + 0x16c], eax
mov edx, dword [esp + 0x158]
jae 0x40c750
lea edx, [esp + 0x158]
cmp dword [esp + 0x150], eax
mov eax, dword [esp + 0x13c]
jae 0x40c767
lea eax, [esp + 0x13c]
push edi
push esi
push edx
mov edx, dword [esp + 0x64]
push eax
push edx
call fcn.00414ff0
test eax, eax
je 0x40c7c9
mov esi, dword [esp + 0x18]
mov cl, byte [esi + 0x3d]
neg cl
push eax
push str.Error_0x_X_creating_value
push 0x4524d8
sbb ecx, ecx
not ecx
and ecx, eax
mov eax, 2
mov dword [esi + 0x38], ecx
call fcn.0041eee0
add esp, 0xc
cmp byte [esi + 0x3d], 0
jne 0x40c7c9
push 0x7f01
push 1
push 0x80
push 0x7da
xor edx, edx
mov ecx, 0xc
call fcn.004242b0
add esp, 0x10
xor ebx, ebx
mov edx, dword [esp + 0x18]
cmp byte [edx + 0x3c], bl
jne 0x40c7f5
mov eax, dword [esp + 0x130]
push str.create
mov edi, 6
lea ecx, [esp + 0x120]
call fcn.00404360
test eax, eax
je 0x40c81a
mov eax, dword [esp + 0x130]
push str.deleteonuninstall
mov edi, 0x11
lea ecx, [esp + 0x120]
call fcn.00404360
test eax, eax
jne 0x40ccdb
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x20c], 0x10
push 5
push str.root
lea esi, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
call fcn.004035b0
lea eax, [esp + 0x170]
push eax
mov ecx, esi
push ecx
lea edi, [esp + 0x44]
mov byte [esp + 0x214], 0x11
call fcn.0041a110
add esp, 8
push eax
lea esi, [esp + 0x64]
mov byte [esp + 0x210], 0x12
call fcn.004159f0
mov ebp, 8
cmp dword [esp + 0x54], ebp
jb 0x40c898
mov edx, dword [esp + 0x40]
push edx
call fcn.00429d64
add esp, 4
mov byte [esp + 0x20c], 0x10
cmp dword [esp + 0x38], ebp
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], bx
jb 0x40c8c4
mov eax, dword [esp + 0x24]
push eax
call fcn.00429d64
add esp, 4
push 5
push 0x447530
lea esi, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
call fcn.004035b0
lea ecx, [esp + 0x138]
push ecx
mov edx, esi
push edx
lea edi, [esp + 0x44]
mov byte [esp + 0x214], 0x13
call fcn.0041a110
add esp, 8
push eax
lea esi, [esp + 0x64]
mov byte [esp + 0x210], 0x14
call fcn.004159f0
cmp dword [esp + 0x54], ebp
jb 0x40c929
mov eax, dword [esp + 0x40]
push eax
call fcn.00429d64
add esp, 4
mov byte [esp + 0x20c], 0x10
cmp dword [esp + 0x38], ebp
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], bx
jb 0x40c955
mov ecx, dword [esp + 0x24]
push ecx
call fcn.00429d64
add esp, 4
push 6
push str.value
lea esi, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
call fcn.004035b0
lea edx, [esp + 0x154]
push edx
mov eax, esi
push eax
lea edi, [esp + 0x44]
mov byte [esp + 0x214], 0x15
call fcn.0041a110
add esp, 8
push eax
lea esi, [esp + 0x64]
mov byte [esp + 0x210], 0x16
call fcn.004159f0
cmp dword [esp + 0x54], ebp
jb 0x40c9ba
mov ecx, dword [esp + 0x40]
push ecx
call fcn.00429d64
add esp, 4
mov byte [esp + 0x20c], 0x10
cmp dword [esp + 0x38], ebp
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], bx
jb 0x40c9e6
mov edx, dword [esp + 0x24]
push edx
call fcn.00429d64
add esp, 4
push 5
push str.hive
lea esi, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
call fcn.004035b0
lea eax, [esp + 0x18c]
push eax
mov ecx, esi
push ecx
lea edi, [esp + 0x44]
mov byte [esp + 0x214], 0x17
call fcn.0041a110
add esp, 8
push eax
lea esi, [esp + 0x64]
mov byte [esp + 0x210], 0x18
call fcn.004159f0
cmp dword [esp + 0x54], ebp
jb 0x40ca4b
mov edx, dword [esp + 0x40]
push edx
call fcn.00429d64
add esp, 4
mov byte [esp + 0x20c], 0x10
cmp dword [esp + 0x38], ebp
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], bx
jb 0x40ca77
mov eax, dword [esp + 0x24]
push eax
call fcn.00429d64
add esp, 4
push 0x14
push str.delete_if_not_empty
lea esi, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
call fcn.004035b0
lea ecx, [esp + 0x1e0]
push ecx
mov edx, esi
push edx
lea edi, [esp + 0x44]
mov byte [esp + 0x214], 0x19
call fcn.0041a110
add esp, 8
push eax
lea esi, [esp + 0x64]
mov byte [esp + 0x210], 0x1a
call fcn.004159f0
cmp dword [esp + 0x54], ebp
jb 0x40cadc
mov eax, dword [esp + 0x40]
push eax
call fcn.00429d64
add esp, 4
mov byte [esp + 0x20c], 0x10
cmp dword [esp + 0x38], ebp
mov dword [esp + 0x54], 7
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], bx
jb 0x40cb08
mov ecx, dword [esp + 0x24]
push ecx
call fcn.00429d64
add esp, 4
mov eax, dword [esp + 0x5c]
lea edx, [esp + 0x78]
push edx
push eax
mov ecx, 0x447238
call fcn.00408280
mov edi, eax
mov byte [esp + 0x20c], 0x1b
push 0xa
push str.usequence
lea esi, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
call fcn.004035b0
push edi
mov ecx, esi
push ecx
lea edi, [esp + 0x44]
mov byte [esp + 0x214], 0x1c
call fcn.0041a110
add esp, 8
push eax
lea esi, [esp + 0x64]
mov byte [esp + 0x210], 0x1d
call fcn.004159f0
cmp dword [esp + 0x54], ebp
jb 0x40cb84
mov edx, dword [esp + 0x40]
push edx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x38], ebp
mov esi, 7
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], bx
jb 0x40cba9
mov eax, dword [esp + 0x24]
push eax
call fcn.00429d64
add esp, 4
mov byte [esp + 0x20c], 0x10
cmp dword [esp + 0x90], ebp
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], ebx
mov word [esp + 0x24], bx
jb 0x40cbd4
mov ecx, dword [esp + 0x7c]
push ecx
call fcn.00429d64
add esp, 4
mov eax, dword [esp + 0x5c]
lea edx, [esp + 0x78]
push edx
push eax
mov ecx, 0x447160
call fcn.00408280
mov edi, eax
mov byte [esp + 0x20c], 0x1e
push 6
push str.group
lea esi, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], ebx
mov word [esp + 0x2c], bx
call fcn.004035b0
push edi
mov ecx, esi
push ecx
lea edi, [esp + 0x44]
mov byte [esp + 0x214], 0x1f
call fcn.0041a110
add esp, 8
push eax
lea esi, [esp + 0x64]
mov byte [esp + 0x210], 0x20
call fcn.004159f0
cmp dword [esp + 0x54], ebp
jb 0x40cc50
mov edx, dword [esp + 0x40]
push edx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x38], ebp
mov esi, 7
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], bx
jb 0x40cc75
mov eax, dword [esp + 0x24]
push eax
call fcn.00429d64
add esp, 4
mov byte [esp + 0x20c], 0x10
cmp dword [esp + 0x90], ebp
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], ebx
mov word [esp + 0x24], bx
jb 0x40cca0
mov ecx, dword [esp + 0x7c]
push ecx
call fcn.00429d64
add esp, 4
mov edx, dword [esp + 0x18]
push str.registry
push edx
lea ecx, [esp + 0x68]
call fcn.00411eb0
mov eax, dword [esp + 0x64]
cmp eax, ebx
je 0x40cce0
mov ecx, dword [esp + 0x5c]
mov edi, dword [esp + 0x68]
push ecx
call fcn.0041b220
mov edx, dword [esp + 0x68]
add esp, 4
push edx
call fcn.00429d64
add esp, 4
jmp 0x40cce0
mov ebp, 8
sub dword [0x4524f8], 1
mov eax, dword [esp + 0x18]
cmp dword [eax + 0x38], ebx
sete byte [esp + 0x1f]
cmp dword [esp + 0x1f8], ebp
jb 0x40cd0c
mov ecx, dword [esp + 0x1e4]
push ecx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x1a4], ebp
mov esi, 7
mov dword [esp + 0x1f8], esi
mov dword [esp + 0x1f4], ebx
mov word [esp + 0x1e4], bx
jb 0x40cd40
mov edx, dword [esp + 0x190]
push edx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x1c0], ebp
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a0], ebx
mov word [esp + 0x190], bx
jb 0x40cd6f
mov eax, dword [esp + 0x1ac]
push eax
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x1dc], ebp
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1bc], ebx
mov word [esp + 0x1ac], bx
jb 0x40cd9e
mov ecx, dword [esp + 0x1c8]
push ecx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x16c], ebp
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1d8], ebx
mov word [esp + 0x1c8], bx
jb 0x40cdcd
mov edx, dword [esp + 0x158]
push edx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x150], ebp
mov dword [esp + 0x16c], esi
mov dword [esp + 0x168], ebx
mov word [esp + 0x158], bx
jb 0x40cdfc
mov eax, dword [esp + 0x13c]
push eax
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x188], ebp
mov dword [esp + 0x150], esi
mov dword [esp + 0x14c], ebx
mov word [esp + 0x13c], bx
jb 0x40ce2b
mov ecx, dword [esp + 0x174]
push ecx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x134], ebp
mov dword [esp + 0x188], esi
mov dword [esp + 0x184], ebx
mov word [esp + 0x174], bx
jb 0x40ce5a
mov edx, dword [esp + 0x120]
push edx
call fcn.00429d64
add esp, 4
lea ecx, [esp + 0xe8]
mov dword [esp + 0x134], esi
mov dword [esp + 0x130], ebx
mov word [esp + 0x120], bx
mov byte [esp + 0x20c], bl
call fcn.004056d0
lea eax, [esp + 0xe8]
push eax
mov dword [esp + 0xec], vtable.std::ios_base.0
call fcn.00427f16
mov eax, dword [esp + 0x74]
add esp, 4
cmp eax, ebx
je 0x40cead
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov al, byte [esp + 0x1f]
jmp 0x40d08e
push str.Unsupported_root_key
push 0x4524d8
mov eax, 1
call fcn.0041eee0
mov edi, 8
add esp, 8
cmp dword [esp + 0x1f8], edi
jb 0x40ceeb
mov ecx, dword [esp + 0x1e4]
push ecx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x1a4], edi
mov esi, 7
mov dword [esp + 0x1f8], esi
mov dword [esp + 0x1f4], ebx
mov word [esp + 0x1e4], bx
jb 0x40cf1f
mov edx, dword [esp + 0x190]
push edx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x1c0], edi
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a0], ebx
mov word [esp + 0x190], bx
jb 0x40cf4e
mov eax, dword [esp + 0x1ac]
push eax
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x1dc], edi
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1bc], ebx
mov word [esp + 0x1ac], bx
jb 0x40cf7d
mov ecx, dword [esp + 0x1c8]
push ecx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x16c], edi
mov dword [esp + 0x1dc], esi
mov dword [esp + 0x1d8], ebx
mov word [esp + 0x1c8], bx
jb 0x40cfac
mov edx, dword [esp + 0x158]
push edx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x150], edi
mov dword [esp + 0x16c], esi
mov dword [esp + 0x168], ebx
mov word [esp + 0x158], bx
jb 0x40cfdb
mov eax, dword [esp + 0x13c]
push eax
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x188], edi
mov dword [esp + 0x150], esi
mov dword [esp + 0x14c], ebx
mov word [esp + 0x13c], bx
jb 0x40d00a
mov ecx, dword [esp + 0x174]
push ecx
call fcn.00429d64
add esp, 4
cmp dword [esp + 0x134], edi
mov dword [esp + 0x188], esi
mov dword [esp + 0x184], ebx
mov word [esp + 0x174], bx
jb 0x40d039
mov edx, dword [esp + 0x120]
push edx
call fcn.00429d64
add esp, 4
lea ecx, [esp + 0xe8]
mov dword [esp + 0x134], esi
mov dword [esp + 0x130], ebx
mov word [esp + 0x120], bx
mov byte [esp + 0x20c], bl
call fcn.004056d0
lea eax, [esp + 0xe8]
push eax
mov dword [esp + 0xec], vtable.std::ios_base.0
call fcn.00427f16
mov eax, dword [esp + 0x74]
add esp, 4
cmp eax, ebx
je 0x40d08c
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor al, al
mov ecx, dword [esp + 0x204]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1e8]
xor ecx, esp
call fcn.004289ca
add esp, 0x1fc
ret 4