Function at 0x415210
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
sub esp, 0x6d4
mov eax, dword [0x437888]
xor eax, esp
mov dword [esp + 0x6cc], eax
mov eax, dword [0x43b668]
push ebx
push ebp
push esi
mov dword [eax + 0x190], 0
mov ebx, edx
mov eax, dword [0x43b668]
mov ebp, dword [0x43b038]
push edi
mov dword [eax + 0x198], 0
mov eax, dword [0x43b668]
mov dword [eax + 0x1a0], 0
mov eax, dword [0x43b668]
mov dword [eax + 0x1b0], 0
mov eax, dword [0x43b668]
mov dword [esp + 0x4c], 0
mov dword [eax + 0x1a8], 0
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x4c]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push 0x43465c
push 0x80000002
call dword [sym.imp.advapi32.dll_RegCreateKeyExA]
test eax, eax
jne 0x415319
cmp dword [esp + 0x58], 2
jne 0x41530f
lea eax, [esp + 0x5c]
mov dword [esp + 0x5c], 4
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x6c]
push eax
push 0
push 0x434678
push dword [esp + 0x5c]
call dword [sym.imp.advapi32.dll_RegQueryValueExA]
test eax, eax
jne 0x415307
cmp dword [esp + 0x4c], eax
je 0x41530f
push 4
mov dword [esp + 0x58], eax
lea eax, [esp + 0x58]
push eax
push 4
push 0
push 0x434678
push dword [esp + 0x5c]
call dword [sym.imp.advapi32.dll_RegSetValueExA]
jmp 0x41530f
mov dword [esp + 0x4c], 0
push dword [esp + 0x48]
call dword [sym.imp.advapi32.dll_RegCloseKey]
push 0x43a5c8
push 0x43468c
lea eax, [esp + 0x4e0]
push 0x1ff
push eax
call fcn.0041d632
add esp, 0x10
lea eax, [esp + 0x4d8]
push eax
call dword [sym.imp.kernel32.dll_LoadLibraryA]
mov edi, eax
test edi, edi
jne 0x415368
lea eax, [edi + 1]
mov ecx, dword [esp + 0x6dc]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0041d486
add esp, 0x6d4
ret
push 0x434698
push edi
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [esp + 0x60], eax
test eax, eax
jne 0x41538a
push edi
call dword [sym.imp.kernel32.dll_FreeLibrary]
mov eax, 2
jmp 0x41534f
push 0x20
call eax
mov esi, eax
mov dword [0x43b510], esi
test esi, esi
jne 0x4153b8
push 0x1f
call dword [esp + 0x64]
mov esi, eax
mov dword [0x43b510], esi
test esi, esi
jne 0x4153b8
push edi
call dword [sym.imp.kernel32.dll_FreeLibrary]
lea eax, [esi + 3]
jmp 0x41534f
cmp dword [esp + 0x4c], 0
jne 0x4153e7
push 0x4346a8
call dword [sym.imp.kernel32.dll_GetModuleHandleA]
test eax, eax
je 0x4153e1
mov ebx, dword [sym.imp.kernel32.dll_ReadProcessMemory]
mov dword [esp + 0x4c], 1
jmp 0x4160ca
mov esi, dword [0x43b510]
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
add esp, 0xc
mov dword [esp + 0x30], 1
lea ecx, [esp + 0x10]
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0x280
push 0x43b514
push ecx
push 0x40
push ebp
push 1
mov dword [esp + 0x28], 0x1e0
mov dword [esp + 0x30], 2
mov dword [esp + 0x58], 1
mov dword [0x43b514], 0
mov eax, dword [esi]
push 0
push esi
call dword [eax + 0x40]
test eax, eax
je 0x415461
mov dword [0x43b514], 0
jmp 0x41546f
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
test ebx, ebx
je 0x415499
mov eax, dword [0x43b510]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
push edi
mov dword [0x43b510], 0
call dword [sym.imp.kernel32.dll_FreeLibrary]
mov eax, 8
jmp 0x41534f
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0x16
mov dword [esp + 0x10], 0x280
push 0x43b514
push edx
push 0x40
push ebp
push 1
mov dword [esp + 0x28], 0x1e0
mov dword [esp + 0x30], 2
mov dword [esp + 0x58], 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x41550e
mov dword [0x43b514], 0
jmp 0x41551c
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov ecx, dword [eax]
push 0x43b514
push edx
push 0x40
push ebp
push 1
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x415571
mov dword [0x43b514], 0
jmp 0x41557f
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0x16
mov ecx, dword [eax]
push 0x43b514
push edx
push 0x40
push ebp
push 1
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x4155d4
mov dword [0x43b514], 0
jmp 0x4155e2
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0x280
push 0x43b514
push edx
push 0x20
push ebp
push 1
mov dword [esp + 0x28], 0x1e0
mov dword [esp + 0x30], 2
mov dword [esp + 0x58], 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x415657
mov dword [0x43b514], 0
jmp 0x415665
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0x16
mov dword [esp + 0x10], 0x280
push 0x43b514
push edx
push 0x20
push ebp
push 1
mov dword [esp + 0x28], 0x1e0
mov dword [esp + 0x30], 2
mov dword [esp + 0x58], 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x4156da
mov dword [0x43b514], 0
jmp 0x4156e8
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0x280
push 0x43b514
push edx
push 0x20
push ebp
push 2
mov dword [esp + 0x28], 0x1e0
mov dword [esp + 0x30], 2
mov dword [esp + 0x58], 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x41575d
mov dword [0x43b514], 0
jmp 0x41576b
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0x16
mov dword [esp + 0x10], 0x280
push 0x43b514
push edx
push 0x20
push ebp
push 2
mov dword [esp + 0x28], 0x1e0
mov dword [esp + 0x30], 2
mov dword [esp + 0x58], 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x4157e0
mov dword [0x43b514], 0
jmp 0x4157ea
mov ecx, dword [0x43b514]
test ecx, ecx
jne 0x415850
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov ecx, dword [eax]
push 0x43b514
push edx
push 0x20
push ebp
push 2
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x415842
mov dword [0x43b514], 0
jmp 0x415473
mov ecx, dword [0x43b514]
test ecx, ecx
je 0x415473
xor eax, eax
cmp eax, 0x20
jae 0x4165c7
mov byte [esp + eax + 0x4b8], 0
inc eax
cmp eax, 0x20
jl 0x415855
mov eax, dword [ecx]
lea edx, [esp + 0x50]
push edx
push 0
push ecx
call dword [eax + 0x38]
mov ebx, dword [sym.imp.kernel32.dll_ReadProcessMemory]
test eax, eax
jne 0x415ab3
mov eax, dword [esp + 0x50]
push 0
push 0x10
mov esi, dword [eax]
lea eax, [esp + 0x4c0]
push eax
push dword [esi + 0xc]
push dword [0x43a178]
call ebx
mov eax, dword [0x43b668]
mov dword [eax + 0x10c], 0
mov eax, dword [0x43b668]
mov ecx, dword [esi + 0xc]
sub ecx, edi
mov dword [eax + 0x1a0], ecx
mov al, byte [esp + 0x4b8]
cmp al, 0x8b
jne 0x415a32
cmp byte [esp + 0x4b9], 0xff
jne 0x415aa9
cmp byte [esp + 0x4ba], 0x55
jne 0x415aa9
cmp byte [esp + 0x4bb], al
jne 0x415aa9
cmp byte [esp + 0x4bc], 0xec
jne 0x415aa9
mov al, byte [esp + 0x4bd]
cmp al, 0x8b
jne 0x4159a3
cmp byte [esp + 0x4be], 0x45
jne 0x415a21
cmp byte [esp + 0x4bf], 0x1c
jne 0x415a21
cmp byte [esp + 0x4c0], al
jne 0x415a21
cmp byte [esp + 0x4c1], 0x4d
jne 0x415a21
cmp byte [esp + 0x4c2], 0x18
jne 0x415a21
cmp byte [esp + 0x4c3], al
jne 0x415a21
cmp byte [esp + 0x4c4], 0x55
jne 0x415a21
cmp byte [esp + 0x4c5], 0x14
jne 0x415a21
mov eax, dword [0x43b668]
add dword [eax + 0x1a0], 8
mov eax, dword [0x43b668]
mov dword [eax + 0x10c], 0x9a0
jmp 0x415aa9
cmp al, 0x83
jne 0x415a21
cmp byte [esp + 0x4be], 0xec
jne 0x415a21
cmp byte [esp + 0x4bf], 0x78
jne 0x415a21
cmp byte [esp + 0x4c0], 0x53
jne 0x415a21
cmp byte [esp + 0x4c1], 0x8b
jne 0x415a21
cmp byte [esp + 0x4c2], 0x5d
jne 0x415a21
cmp byte [esp + 0x4c3], 8
jne 0x415a21
cmp byte [esp + 0x4c4], 0x8b
jne 0x415a21
cmp byte [esp + 0x4c5], 0x43
jne 0x415a21
cmp byte [esp + 0x4c6], 0xec
jne 0x415a21
mov eax, dword [0x43b668]
add dword [eax + 0x1a0], 9
mov eax, dword [0x43b668]
mov dword [eax + 0x10c], 0x9a1
jmp 0x415aa9
mov eax, dword [0x43b668]
mov dword [eax + 0x10c], 0x903
jmp 0x415aa9
cmp al, 0x83
jne 0x415aa9
cmp byte [esp + 0x4b9], 0xec
jne 0x415aa9
cmp byte [esp + 0x4ba], 0x78
jne 0x415aa9
cmp byte [esp + 0x4bb], 0x55
jne 0x415aa9
cmp byte [esp + 0x4bc], 0x8b
jne 0x415aa9
cmp byte [esp + 0x4bd], 0xac
jne 0x415aa9
cmp byte [esp + 0x4be], 0x24
jne 0x415aa9
cmp byte [esp + 0x4bf], 0x80
jne 0x415aa9
cmp byte [esp + 0x4c0], 0
jne 0x415aa9
cmp byte [esp + 0x4c1], 0
jne 0x415aa9
cmp byte [esp + 0x4c2], 0
jne 0x415aa9
mov eax, dword [0x43b668]
mov dword [eax + 0x10c], 0x902
mov eax, dword [esp + 0x50]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [0x43b514]
push 0
push 0x10
mov esi, dword [eax]
lea eax, [esp + 0x4c0]
push eax
push dword [esi + 0x44]
push dword [0x43a178]
call ebx
mov eax, dword [0x43b668]
mov dword [eax + 0xfc], 0
mov eax, dword [0x43b668]
mov ecx, dword [esi + 0x44]
sub ecx, edi
mov dword [eax + 0x190], ecx
mov al, byte [esp + 0x4b8]
cmp al, 0x8b
jne 0x415c1f
cmp byte [esp + 0x4b9], 0xff
jne 0x415c64
cmp byte [esp + 0x4ba], 0x55
jne 0x415c64
cmp byte [esp + 0x4bb], al
jne 0x415c64
cmp byte [esp + 0x4bc], 0xec
jne 0x415c64
mov al, byte [esp + 0x4bd]
cmp al, 0x56
jne 0x415bb1
cmp byte [esp + 0x4be], 0x57
jne 0x415c0e
cmp byte [esp + 0x4bf], 0x8b
jne 0x415c0e
cmp byte [esp + 0x4c0], 0x7d
jne 0x415c0e
cmp byte [esp + 0x4c1], 8
jne 0x415c0e
cmp byte [esp + 0x4c2], 0x85
jne 0x415c0e
cmp byte [esp + 0x4c3], 0xff
jne 0x415c0e
mov eax, dword [0x43b668]
add dword [eax + 0x190], 7
mov eax, dword [0x43b668]
mov dword [eax + 0xfc], 0x9a0
jmp 0x415c64
cmp al, 0x51
jne 0x415c0e
cmp byte [esp + 0x4be], 0x53
jne 0x415c0e
cmp byte [esp + 0x4bf], 0x8b
jne 0x415c0e
cmp byte [esp + 0x4c0], 0x5d
jne 0x415c0e
cmp byte [esp + 0x4c1], 8
jne 0x415c0e
cmp byte [esp + 0x4c2], 0x85
jne 0x415c0e
cmp byte [esp + 0x4c3], 0xdb
jne 0x415c0e
mov eax, dword [0x43b668]
add dword [eax + 0x190], 7
mov eax, dword [0x43b668]
mov dword [eax + 0xfc], 0x9a1
jmp 0x415c64
mov eax, dword [0x43b668]
mov dword [eax + 0xfc], 0x903
jmp 0x415c64
cmp al, 0x51
jne 0x415c64
cmp byte [esp + 0x4b9], 0x53
jne 0x415c64
cmp byte [esp + 0x4ba], 0x8b
jne 0x415c64
cmp byte [esp + 0x4bb], 0x5c
jne 0x415c64
cmp byte [esp + 0x4bc], 0x24
jne 0x415c64
cmp byte [esp + 0x4bd], 0xc
jne 0x415c64
mov eax, dword [0x43b668]
mov dword [eax + 0xfc], 0x902
xor eax, eax
cmp eax, 0x20
jae 0x4165c7
mov byte [esp + eax + 0x4b8], 0
inc eax
cmp eax, 0x20
jl 0x415c69
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x3ed7e]
push eax
push dword [0x43a178]
call ebx
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0
mov eax, dword [0x43b668]
mov dword [eax + 0x13c], 0
cmp byte [esp + 0x4b8], 0x75
jne 0x415d06
cmp byte [esp + 0x4b9], 0x43
jne 0x415d06
cmp byte [esp + 0x4ba], 0x8b
jne 0x415d06
cmp byte [esp + 0x4bb], 0x54
jne 0x415d06
cmp byte [esp + 0x4bc], 0x24
jne 0x415d06
cmp byte [esp + 0x4bd], 0x30
jne 0x415d06
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x3ed7e
jmp 0x416082
cmp byte [esp + 0x4c8], 0x75
jne 0x415d56
cmp byte [esp + 0x4c9], 0x43
jne 0x415d56
cmp byte [esp + 0x4ca], 0x8b
jne 0x415d56
cmp byte [esp + 0x4cb], 0x54
jne 0x415d56
cmp byte [esp + 0x4cc], 0x24
jne 0x415d56
cmp byte [esp + 0x4cd], 0x30
jne 0x415d56
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x3ed8e
jmp 0x416082
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
jne 0x415dca
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x4402a]
push eax
push dword [0x43a178]
call ebx
cmp byte [esp + 0x4b8], 0x75
jne 0x415dca
cmp byte [esp + 0x4b9], 0x23
jne 0x415dca
cmp byte [esp + 0x4ba], 0x8b
jne 0x415dca
cmp byte [esp + 0x4bb], 0x4d
jne 0x415dca
cmp byte [esp + 0x4bc], 8
jne 0x415dca
cmp byte [esp + 0x4bd], 0x6a
jne 0x415dca
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x4402a
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
jne 0x415e3e
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x43e6a]
push eax
push dword [0x43a178]
call ebx
cmp byte [esp + 0x4b8], 0x75
jne 0x415e3e
cmp byte [esp + 0x4b9], 0x23
jne 0x415e3e
cmp byte [esp + 0x4ba], 0x8b
jne 0x415e3e
cmp byte [esp + 0x4bb], 0x4d
jne 0x415e3e
cmp byte [esp + 0x4bc], 8
jne 0x415e3e
cmp byte [esp + 0x4bd], 0x6a
jne 0x415e3e
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x43e6a
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
jne 0x415eb2
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x4406a]
push eax
push dword [0x43a178]
call ebx
cmp byte [esp + 0x4b8], 0x75
jne 0x415eb2
cmp byte [esp + 0x4b9], 0x23
jne 0x415eb2
cmp byte [esp + 0x4ba], 0x8b
jne 0x415eb2
cmp byte [esp + 0x4bb], 0x4d
jne 0x415eb2
cmp byte [esp + 0x4bc], 8
jne 0x415eb2
cmp byte [esp + 0x4bd], 0x6a
jne 0x415eb2
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x4406a
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
jne 0x415f26
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x424de]
push eax
push dword [0x43a178]
call ebx
cmp byte [esp + 0x4b8], 0x75
jne 0x415f26
cmp byte [esp + 0x4b9], 0x43
jne 0x415f26
cmp byte [esp + 0x4ba], 0x8b
jne 0x415f26
cmp byte [esp + 0x4bb], 0x54
jne 0x415f26
cmp byte [esp + 0x4bc], 0x24
jne 0x415f26
cmp byte [esp + 0x4bd], 0x30
jne 0x415f26
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x424de
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
jne 0x415f9a
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x4392a]
push eax
push dword [0x43a178]
call ebx
cmp byte [esp + 0x4b8], 0x75
jne 0x415f9a
cmp byte [esp + 0x4b9], 0x23
jne 0x415f9a
cmp byte [esp + 0x4ba], 0x8b
jne 0x415f9a
cmp byte [esp + 0x4bb], 0x4d
jne 0x415f9a
cmp byte [esp + 0x4bc], 8
jne 0x415f9a
cmp byte [esp + 0x4bd], 0x6a
jne 0x415f9a
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x4392a
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
jne 0x41600e
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x3fcda]
push eax
push dword [0x43a178]
call ebx
cmp byte [esp + 0x4b8], 0x75
jne 0x41600e
cmp byte [esp + 0x4b9], 0x23
jne 0x41600e
cmp byte [esp + 0x4ba], 0x8b
jne 0x41600e
cmp byte [esp + 0x4bb], 0x4d
jne 0x41600e
cmp byte [esp + 0x4bc], 8
jne 0x41600e
cmp byte [esp + 0x4bd], 0x6a
jne 0x41600e
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x3fcda
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
jne 0x416082
push 0
push 0x20
lea eax, [esp + 0x4c0]
push eax
lea eax, [edi + 0x43ffa]
push eax
push dword [0x43a178]
call ebx
cmp byte [esp + 0x4b8], 0x75
jne 0x416082
cmp byte [esp + 0x4b9], 0x23
jne 0x416082
cmp byte [esp + 0x4ba], 0x8b
jne 0x416082
cmp byte [esp + 0x4bb], 0x4d
jne 0x416082
cmp byte [esp + 0x4bc], 8
jne 0x416082
cmp byte [esp + 0x4bd], 0x6a
jne 0x416082
mov eax, dword [0x43b668]
mov dword [eax + 0x138], 0x43ffa
mov eax, dword [0x43b668]
cmp dword [eax + 0x138], 0
je 0x4160b5
push 0
push 2
lea eax, [esp + 0x4c0]
push eax
mov eax, dword [0x43b668]
mov eax, dword [eax + 0x138]
add eax, 0xffffffe9
add eax, edi
push eax
push dword [0x43a178]
call ebx
mov eax, dword [0x43b514]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov dword [0x43b514], 0
mov eax, dword [0x43b510]
lea edx, [esp + 0x68]
push edx
push 0
push 0
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x416113
lea eax, [esp + 0x68]
push eax
push 0x1ff
push 0x43b310
call fcn.0041d64e
mov eax, dword [esp + 0x494]
add esp, 0xc
mov dword [0x43b308], eax
mov eax, dword [esp + 0x48c]
mov dword [0x43b30c], eax
jmp 0x416125
xorps xmm0, xmm0
mov byte [0x43b310], 0
movlpd qword [0x43b308], xmm0
mov eax, dword [0x43b510]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
cmp dword [esp + 0x4c], 0
mov dword [0x43b510], 0
je 0x4162e8
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x4c]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push 0x43465c
push 0x80000002
call dword [sym.imp.advapi32.dll_RegCreateKeyExA]
test eax, eax
jne 0x4161ab
cmp dword [esp + 0x58], 2
jne 0x4161a1
push 4
lea eax, [esp + 0x58]
mov dword [esp + 0x60], 4
push eax
push 4
push 0
push 0x434678
push dword [esp + 0x5c]
mov dword [esp + 0x6c], 1
call dword [sym.imp.advapi32.dll_RegSetValueExA]
push dword [esp + 0x48]
call dword [sym.imp.advapi32.dll_RegCloseKey]
mov esi, dword [esp + 0x60]
push 0x20
call esi
mov dword [0x43b510], eax
test eax, eax
jne 0x4161da
push 0x1f
call esi
mov dword [0x43b510], eax
test eax, eax
jne 0x4161da
push edi
call dword [sym.imp.kernel32.dll_FreeLibrary]
mov eax, 5
jmp 0x41534f
push 0x4346a8
call dword [sym.imp.kernel32.dll_GetModuleHandleA]
mov esi, eax
test esi, esi
je 0x4162d3
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b510]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov dword [0x43b514], 0
mov ecx, dword [eax]
push 0x43b514
push edx
push 0x40
push ebp
push 1
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x41626c
mov eax, dword [0x43b510]
lea edx, [esp + 0x10]
push 0x43b514
push edx
push 0x20
mov ecx, dword [eax]
push ebp
push 1
push 0
push eax
call dword [ecx + 0x40]
test eax, eax
je 0x41626c
mov eax, 7
jmp 0x41534f
mov ecx, dword [0x43b514]
test ecx, ecx
je 0x4162d3
mov eax, dword [ecx]
lea edx, [esp + 0x50]
push edx
push 0
push ecx
call dword [eax + 0x38]
test eax, eax
jne 0x4162a7
mov eax, dword [esp + 0x50]
mov eax, dword [eax]
mov ecx, dword [eax + 0xc]
mov eax, dword [0x43b668]
sub ecx, esi
mov dword [eax + 0x1b0], ecx
mov eax, dword [esp + 0x50]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [0x43b514]
mov eax, dword [eax]
mov ecx, dword [eax + 0x44]
mov eax, dword [0x43b668]
sub ecx, esi
mov dword [eax + 0x1a8], ecx
mov eax, dword [0x43b514]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov dword [0x43b514], 0
mov eax, dword [0x43b510]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov dword [0x43b510], 0
push 0x4346b4
push edi
mov dword [0x43b51c], 0
call dword [sym.imp.kernel32.dll_GetProcAddress]
test eax, eax
je 0x4165ba
push 0x43b51c
push 0x20
call eax
test eax, eax
jne 0x4165ba
mov esi, dword [0x43b51c]
test esi, esi
je 0x4165ba
push 0x38
push eax
mov dword [0x43b520], eax
lea eax, [esp + 0x18]
push eax
call fcn.00423570
add esp, 0xc
mov dword [esp + 0x30], 1
lea ecx, [esp + 0x10]
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0x280
push 0x43b520
push 0
push ecx
push 0x40
push ebp
push 1
mov dword [esp + 0x2c], 0x1e0
mov dword [esp + 0x34], 2
mov dword [esp + 0x5c], 1
mov eax, dword [esi]
push 0
push esi
call dword [eax + 0x50]
test eax, eax
je 0x41639b
mov dword [0x43b520], 0
jmp 0x4163a9
mov esi, dword [0x43b520]
test esi, esi
jne 0x41650c
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b51c]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0x16
mov dword [esp + 0x10], 0x280
push 0x43b520
push 0
push edx
push 0x40
push ebp
push 1
mov dword [esp + 0x2c], 0x1e0
mov dword [esp + 0x34], 2
mov dword [esp + 0x5c], 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x50]
test eax, eax
je 0x416420
mov dword [0x43b520], 0
jmp 0x41642e
mov esi, dword [0x43b520]
test esi, esi
jne 0x41650c
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b51c]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0x280
push 0x43b520
push 0
push edx
push 0x20
push ebp
push 1
mov dword [esp + 0x2c], 0x1e0
mov dword [esp + 0x34], 2
mov dword [esp + 0x5c], 1
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x50]
test eax, eax
je 0x4164a5
mov dword [0x43b520], 0
jmp 0x4164af
mov esi, dword [0x43b520]
test esi, esi
jne 0x41650c
push 0x38
lea eax, [esp + 0x14]
push 0
push eax
call fcn.00423570
mov eax, dword [0x43b51c]
lea edx, [esp + 0x1c]
add esp, 0xc
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
mov ecx, dword [eax]
push 0x43b520
push 0
push edx
push 0x20
push ebp
push 2
push 0
push eax
call dword [ecx + 0x50]
test eax, eax
jne 0x416596
mov esi, dword [0x43b520]
test esi, esi
je 0x4165a0
mov esi, dword [esi]
lea eax, [esp + 0x4b8]
push 0
push 0x10
push eax
push dword [esi + 0x1e4]
push dword [0x43a178]
call ebx
mov eax, dword [0x43b668]
mov dword [eax + 0x104], 0
mov eax, dword [0x43b668]
mov ecx, dword [esi + 0x1e4]
sub ecx, edi
mov dword [eax + 0x198], ecx
cmp byte [esp + 0x4b8], 0x8b
jne 0x41658b
cmp byte [esp + 0x4b9], 0xff
jne 0x41658b
cmp byte [esp + 0x4ba], 0x55
jne 0x41658b
cmp byte [esp + 0x4bb], 0x8b
jne 0x41658b
cmp byte [esp + 0x4bc], 0xec
jne 0x41658b
mov eax, dword [0x43b668]
mov dword [eax + 0x104], 0x903
mov eax, dword [0x43b520]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov dword [0x43b520], 0
mov ecx, dword [0x43b51c]
test ecx, ecx
je 0x4165ba
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [0x43b51c], 0
mov dword [0x43b518], edi
xor eax, eax
jmp 0x41534f
call fcn.0041dbcb
int3