Function at 0x47e404
Capabilities:
Check if file exists
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56f12a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x41330
call fcn.005374e0
push esi
push 0
mov eax, dword [0x5c3074]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x47e43e
jmp 0x47f7c5
call fcn.0055f60b
mov ecx, dword [eax + 4]
mov dword [ebp - 0x410a8], ecx
lea edx, [ebp - 0x28]
mov dword [ebp - 0x411a8], edx
mov eax, dword [ebp - 0x411a8]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x24]
mov dword [ebp - 0x411ac], edx
mov eax, dword [ebp - 0x411ac]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x411b0], edx
mov eax, dword [ebp - 0x411b0]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x1c]
mov dword [ebp - 0x411b4], edx
mov eax, dword [ebp - 0x411b4]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x14]
mov dword [ebp - 0x411b8], edx
mov eax, dword [ebp - 0x411b8]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
mov dword [ebp - 4], 0
push 0x5b1e7c
push 0x9a
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b6118
test eax, eax
je 0x47e4f6
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b5e28
push 0x5b1e84
mov ecx, dword [0x5c3070]
add ecx, 0x200
call fcn.00551562
lea ecx, [ebp - 0x410a0]
call fcn.004e70a0
mov byte [ebp - 4], 1
push 0x5b1e88
lea ecx, [ebp - 0x30]
call fcn.0054d39c
mov byte [ebp - 4], 2
mov dword [ebp - 0x410a4], 1
mov edx, dword [0x5be480]
mov dword [ebp - 0x10], edx
mov byte [ebp - 4], 3
push 1
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x410e4], esp
lea eax, [ebp - 0x30]
push eax
call fcn.0054d095
mov dword [ebp - 0x411e8], eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x410a0]
call fcn.004e75e4
mov dword [ebp - 0x411ec], eax
cmp dword [ebp - 0x411ec], 0
je 0x47f67a
lea ecx, [ebp - 0x410bc]
call fcn.0054c3ab
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x410bc]
push ecx
lea ecx, [ebp - 0x410a0]
call fcn.004e9b9e
mov edx, dword [ebp - 0x410b4]
mov dword [ebp - 0x410c4], edx
mov dword [ebp - 0x410c0], 0
jmp 0x47e5ca
mov eax, dword [ebp - 0x410c0]
add eax, 1
mov dword [ebp - 0x410c0], eax
mov ecx, dword [ebp - 0x410c0]
cmp ecx, dword [ebp - 0x410c4]
jge 0x47f66b
push 0
mov edx, dword [0x5c3074]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x47e66c
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x410bc]
call fcn.0054c3de
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x30]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a0]
call fcn.004e71cb
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x14]
call fcn.0054d328
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x20]
call fcn.0054d328
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.0054d328
jmp 0x47f7c5
mov eax, dword [ebp - 0x410c0]
push eax
lea ecx, [ebp - 0x410c8]
push ecx
lea ecx, [ebp - 0x410bc]
call fcn.00419890
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x410c8]
mov eax, dword [edx - 8]
mov dword [ebp - 0x411bc], eax
cmp dword [ebp - 0x411bc], 0
je 0x47f657
mov ecx, dword [ebp - 0x410c8]
push ecx
mov ecx, dword [0x5c3070]
add ecx, 0xb14
call fcn.00551562
mov dword [ebp - 0x410cc], 0
lea edx, [ebp - 0x410cc]
push edx
push ecx
mov ecx, esp
mov dword [ebp - 0x410e8], esp
lea eax, [ebp - 0x410c8]
push eax
call fcn.0054d095
mov dword [ebp - 0x411f0], eax
lea ecx, [ebp - 0x410a0]
call fcn.004e99fe
mov dword [ebp - 0x411f4], eax
mov ecx, dword [ebp - 0x411f4]
mov dword [ebp - 0x410d0], ecx
cmp dword [ebp - 0x410d0], 1
jne 0x47f657
mov edx, dword [0x5be480]
mov dword [ebp - 0x410d8], edx
mov byte [ebp - 4], 0xa
mov eax, dword [0x5be480]
mov dword [ebp - 0x410d4], eax
mov byte [ebp - 4], 0xb
push ecx
mov ecx, esp
mov dword [ebp - 0x410ec], esp
push 0x5b1ef8
call fcn.0054d39c
mov dword [ebp - 0x411f8], eax
mov ecx, dword [ebp - 0x411f8]
mov dword [ebp - 0x411fc], ecx
mov byte [ebp - 4], 0xc
push ecx
mov ecx, esp
mov dword [ebp - 0x410f0], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41200], eax
lea eax, [ebp - 0x410f4]
push eax
lea ecx, [ebp - 0x410a0]
mov byte [ebp - 4], 0xb
call fcn.00425c70
mov dword [ebp - 0x41204], eax
mov ecx, dword [ebp - 0x41204]
mov dword [ebp - 0x41208], ecx
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x41208]
push edx
lea ecx, [ebp - 0x410d8]
call fcn.0054d46f
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x410f4]
call fcn.0054d328
mov eax, dword [ebp - 0x410d8]
mov ecx, dword [eax - 8]
mov dword [ebp - 0x411c0], ecx
cmp dword [ebp - 0x411c0], 0
je 0x47f25e
push 0x5b1f00
mov edx, dword [ebp - 0x410d8]
push edx
call fcn.00537cf5
add esp, 8
mov dword [ebp - 0x411c4], eax
xor eax, eax
cmp dword [ebp - 0x411c4], 0
setne al
and eax, 0xff
test eax, eax
je 0x47f259
push 0x5b1f08
call fcn.0053842e
add esp, 4
push eax
lea ecx, [ebp - 0x410dc]
call fcn.0054d39c
mov byte [ebp - 4], 0xe
push 0x5c
lea ecx, [ebp - 0x410dc]
call fcn.0054a7e6
cmp eax, 1
jle 0x47e890
push 0x5b1f18
lea ecx, [ebp - 0x410dc]
push ecx
lea edx, [ebp - 0x410f8]
push edx
call fcn.0054d5cd
mov dword [ebp - 0x4120c], eax
mov eax, dword [ebp - 0x4120c]
mov dword [ebp - 0x41210], eax
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x41210]
push ecx
lea ecx, [ebp - 0x410dc]
call fcn.0054d46f
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x410f8]
call fcn.0054d328
lea edx, [ebp - 0x410d8]
push edx
lea ecx, [ebp - 0x410d4]
call fcn.0054d46f
push 0x5b1f1c
lea ecx, [ebp - 0x410d8]
call fcn.0054a808
cmp eax, 0xffffffff
jne 0x47ee5a
push 0x5b1f20
lea ecx, [ebp - 0x410d8]
call fcn.0054a808
cmp eax, 0xffffffff
jne 0x47e8e5
push 0x5b1f24
push str.systemroot
lea ecx, [ebp - 0x410d8]
call fcn.0054a4c8
mov eax, dword [0x5be480]
mov dword [ebp - 0x410e0], eax
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x410d8]
push ecx
lea ecx, [ebp - 0x410e0]
call fcn.004b257a
mov edx, dword [ebp - 0x410e0]
push edx
lea ecx, [ebp - 0x410d8]
call fcn.0054d4bf
push 0x5c
lea ecx, [ebp - 0x410d8]
call fcn.0054ac80
lea eax, [ebp - 0x410d8]
push eax
push str.System32_
lea ecx, [ebp - 0x410dc]
push ecx
lea edx, [ebp - 0x410fc]
push edx
call fcn.0054d5cd
mov dword [ebp - 0x41214], eax
mov eax, dword [ebp - 0x41214]
mov dword [ebp - 0x41218], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x41218]
push ecx
lea edx, [ebp - 0x41100]
push edx
call fcn.0054d567
mov dword [ebp - 0x4121c], eax
mov eax, dword [ebp - 0x4121c]
mov dword [ebp - 0x41220], eax
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x41220]
push ecx
lea ecx, [ebp - 0x410d4]
call fcn.0054d46f
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x41100]
call fcn.0054d328
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x410fc]
call fcn.0054d328
mov edx, dword [ebp - 0x410d4]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x47ee46
lea eax, [ebp - 0x410d8]
push eax
push str.System32drivers_
lea ecx, [ebp - 0x410dc]
push ecx
lea edx, [ebp - 0x41104]
push edx
call fcn.0054d5cd
mov dword [ebp - 0x41224], eax
mov eax, dword [ebp - 0x41224]
mov dword [ebp - 0x41228], eax
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x41228]
push ecx
lea edx, [ebp - 0x41108]
push edx
call fcn.0054d567
mov dword [ebp - 0x4122c], eax
mov eax, dword [ebp - 0x4122c]
mov dword [ebp - 0x41230], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x41230]
push ecx
lea ecx, [ebp - 0x410d4]
call fcn.0054d46f
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x41108]
call fcn.0054d328
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x41104]
call fcn.0054d328
mov edx, dword [ebp - 0x410d4]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x47ee46
push ecx
mov esi, esp
mov dword [ebp - 0x4110c], esp
push ecx
mov ecx, esp
mov dword [ebp - 0x41110], esp
push 0x5b1f90
call fcn.0054d39c
mov dword [ebp - 0x41234], eax
mov eax, dword [ebp - 0x41234]
mov dword [ebp - 0x41238], eax
mov byte [ebp - 4], 0x15
push ecx
mov ecx, esp
mov dword [ebp - 0x41114], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x4123c], eax
push esi
lea ecx, [ebp - 0x410a0]
mov byte [ebp - 4], 0x10
call fcn.00425c70
mov dword [ebp - 0x41240], eax
mov eax, dword [ebp - 0x41240]
mov dword [ebp - 0x41244], eax
mov byte [ebp - 4], 0x16
push ecx
mov ecx, esp
mov dword [ebp - 0x41118], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41248], eax
mov eax, dword [ebp - 0x41248]
mov dword [ebp - 0x4124c], eax
mov byte [ebp - 4], 0x17
push ecx
mov ecx, esp
mov dword [ebp - 0x4111c], esp
lea edx, [ebp - 0x30]
push edx
call fcn.0054d095
mov dword [ebp - 0x41250], eax
mov eax, dword [ebp - 0x41250]
mov dword [ebp - 0x41254], eax
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x410a0]
call fcn.00486080
push eax
mov byte [ebp - 4], 0x10
call fcn.004859b9
add esp, 0x10
mov dword [ebp - 0x41258], eax
cmp dword [ebp - 0x41258], 0
jne 0x47ee46
mov dword [ebp - 0x2c], 1
mov ecx, dword [ebp - 0x1050]
mov dword [ebp - 0x411c8], ecx
mov edx, dword [ebp - 0x30]
push edx
mov eax, dword [ebp - 0x411c8]
push eax
lea ecx, [ebp - 0x41120]
push ecx
call fcn.00485900
add esp, 8
mov dword [ebp - 0x4125c], eax
mov edx, dword [ebp - 0x4125c]
mov dword [ebp - 0x41260], edx
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x41260]
mov ecx, dword [eax]
push ecx
push 0x5b1f98
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0x10
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x41120]
call fcn.0054d328
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x24]
call fcn.0054d46f
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0054d46f
lea edx, [ebp - 0x410c8]
push edx
lea ecx, [ebp - 0x20]
call fcn.0054d46f
push ecx
mov ecx, esp
mov dword [ebp - 0x41124], esp
push 0x5b1fa4
call fcn.0054d39c
mov dword [ebp - 0x41264], eax
mov eax, dword [ebp - 0x41264]
mov dword [ebp - 0x41268], eax
mov byte [ebp - 4], 0x1a
push ecx
mov ecx, esp
mov dword [ebp - 0x41128], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x4126c], eax
lea eax, [ebp - 0x4112c]
push eax
lea ecx, [ebp - 0x410a0]
mov byte [ebp - 4], 0x10
call fcn.00425c70
mov dword [ebp - 0x41270], eax
mov ecx, dword [ebp - 0x41270]
mov dword [ebp - 0x41274], ecx
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x41274]
push edx
lea ecx, [ebp - 0x1c]
call fcn.0054d46f
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x4112c]
call fcn.0054d328
mov dword [ebp - 0x18], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x41130], esp
push 0x5b1fac
call fcn.0054d39c
mov dword [ebp - 0x41278], eax
lea eax, [ebp - 0x41134]
push eax
mov ecx, dword [ebp - 0x410a8]
call fcn.004be333
mov dword [ebp - 0x4127c], eax
mov ecx, dword [ebp - 0x4127c]
mov dword [ebp - 0x41280], ecx
mov byte [ebp - 4], 0x1c
mov edx, dword [ebp - 0x41280]
push edx
lea ecx, [ebp - 0x14]
call fcn.0054d46f
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x41134]
call fcn.0054d328
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x41138], esp
mov dword [ebp - 0x411cc], eax
mov ecx, dword [ebp - 0x411cc]
mov edx, dword [ebp - 0x2c]
mov dword [ecx], edx
lea eax, [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x411cc]
add ecx, 4
call fcn.0054d095
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x24]
push ecx
mov ecx, dword [ebp - 0x411cc]
add ecx, 8
call fcn.0054d095
mov byte [ebp - 4], 0x1e
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x411cc]
add ecx, 0xc
call fcn.0054d095
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x411cc]
add ecx, 0x10
call fcn.0054d095
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x411cc]
mov edx, dword [ebp - 0x18]
mov dword [ecx + 0x14], edx
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x411cc]
add ecx, 0x18
call fcn.0054d095
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x411cc]
mov dword [ebp - 0x41284], ecx
mov ecx, dword [ebp - 0x410a8]
add ecx, 0x2c4
call fcn.0045ada0
push 1
push 0xd
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x4113c], esp
lea edx, [ebp - 0x2c]
push edx
call fcn.0045ac60
mov dword [ebp - 0x41288], eax
call fcn.00484e85
add esp, 0x24
mov eax, dword [ebp - 0x410a4]
push eax
push 0x5b1fd0
lea ecx, [ebp - 0x10]
push ecx
call fcn.0054ab7c
add esp, 0xc
mov edx, dword [ebp - 0x10]
push edx
mov ecx, dword [0x5c3070]
add ecx, 0x200
call fcn.00551562
mov eax, dword [ebp - 0x410a8]
mov ecx, dword [eax + 0x588]
push ecx
push 0x5b1fd8
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0xc
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x5c3070]
add ecx, 0xaa4
call fcn.00412a69
mov ecx, dword [ebp - 0x410a8]
mov edx, dword [ecx + 0x588]
add edx, 1
mov eax, dword [ebp - 0x410a8]
mov dword [eax + 0x588], edx
mov ecx, dword [ebp - 0x410a4]
add ecx, 1
mov dword [ebp - 0x410a4], ecx
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x410e0]
call fcn.0054d328
jmp 0x47f24a
mov edx, dword [ebp - 0x410d8]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x47f24a
push ecx
mov esi, esp
mov dword [ebp - 0x41140], esp
push ecx
mov ecx, esp
mov dword [ebp - 0x41144], esp
push 0x5b1fe0
call fcn.0054d39c
mov dword [ebp - 0x4128c], eax
mov eax, dword [ebp - 0x4128c]
mov dword [ebp - 0x41290], eax
mov byte [ebp - 4], 0x21
push ecx
mov ecx, esp
mov dword [ebp - 0x41148], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41294], eax
push esi
lea ecx, [ebp - 0x410a0]
mov byte [ebp - 4], 0xe
call fcn.00425c70
mov dword [ebp - 0x41298], eax
mov eax, dword [ebp - 0x41298]
mov dword [ebp - 0x4129c], eax
mov byte [ebp - 4], 0x22
push ecx
mov ecx, esp
mov dword [ebp - 0x4114c], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x412a0], eax
mov eax, dword [ebp - 0x412a0]
mov dword [ebp - 0x412a4], eax
mov byte [ebp - 4], 0x23
push ecx
mov ecx, esp
mov dword [ebp - 0x41150], esp
lea edx, [ebp - 0x30]
push edx
call fcn.0054d095
mov dword [ebp - 0x412a8], eax
mov eax, dword [ebp - 0x412a8]
mov dword [ebp - 0x412ac], eax
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x410a0]
call fcn.00486080
push eax
mov byte [ebp - 4], 0xe
call fcn.004859b9
add esp, 0x10
mov dword [ebp - 0x412b0], eax
cmp dword [ebp - 0x412b0], 0
jne 0x47f24a
mov dword [ebp - 0x2c], 1
mov ecx, dword [ebp - 0x1050]
mov dword [ebp - 0x411d0], ecx
mov edx, dword [ebp - 0x30]
push edx
mov eax, dword [ebp - 0x411d0]
push eax
lea ecx, [ebp - 0x41154]
push ecx
call fcn.00485900
add esp, 8
mov dword [ebp - 0x412b4], eax
mov edx, dword [ebp - 0x412b4]
mov dword [ebp - 0x412b8], edx
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x412b8]
mov ecx, dword [eax]
push ecx
push 0x5b1fe8
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0x10
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x41154]
call fcn.0054d328
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x24]
call fcn.0054d46f
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0054d46f
lea edx, [ebp - 0x410c8]
push edx
lea ecx, [ebp - 0x20]
call fcn.0054d46f
push ecx
mov ecx, esp
mov dword [ebp - 0x41158], esp
push 0x5b1ff4
call fcn.0054d39c
mov dword [ebp - 0x412bc], eax
mov eax, dword [ebp - 0x412bc]
mov dword [ebp - 0x412c0], eax
mov byte [ebp - 4], 0x26
push ecx
mov ecx, esp
mov dword [ebp - 0x4115c], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x412c4], eax
lea eax, [ebp - 0x41160]
push eax
lea ecx, [ebp - 0x410a0]
mov byte [ebp - 4], 0xe
call fcn.00425c70
mov dword [ebp - 0x412c8], eax
mov ecx, dword [ebp - 0x412c8]
mov dword [ebp - 0x412cc], ecx
mov byte [ebp - 4], 0x27
mov edx, dword [ebp - 0x412cc]
push edx
lea ecx, [ebp - 0x1c]
call fcn.0054d46f
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x41160]
call fcn.0054d328
mov dword [ebp - 0x18], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x41164], esp
push str.REGISTRY_ERROR_23
call fcn.0054d39c
mov dword [ebp - 0x412d0], eax
lea eax, [ebp - 0x41168]
push eax
mov ecx, dword [ebp - 0x410a8]
call fcn.004be333
mov dword [ebp - 0x412d4], eax
mov ecx, dword [ebp - 0x412d4]
mov dword [ebp - 0x412d8], ecx
mov byte [ebp - 4], 0x28
mov edx, dword [ebp - 0x412d8]
push edx
lea ecx, [ebp - 0x14]
call fcn.0054d46f
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x41168]
call fcn.0054d328
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x4116c], esp
mov dword [ebp - 0x411d4], eax
mov ecx, dword [ebp - 0x411d4]
mov edx, dword [ebp - 0x2c]
mov dword [ecx], edx
lea eax, [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x411d4]
add ecx, 4
call fcn.0054d095
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x24]
push ecx
mov ecx, dword [ebp - 0x411d4]
add ecx, 8
call fcn.0054d095
mov byte [ebp - 4], 0x2a
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x411d4]
add ecx, 0xc
call fcn.0054d095
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x411d4]
add ecx, 0x10
call fcn.0054d095
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x411d4]
mov edx, dword [ebp - 0x18]
mov dword [ecx + 0x14], edx
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x411d4]
add ecx, 0x18
call fcn.0054d095
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x411d4]
mov dword [ebp - 0x412dc], ecx
mov ecx, dword [ebp - 0x410a8]
add ecx, 0x2c4
call fcn.0045ada0
push 1
push 0xd
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x41170], esp
lea edx, [ebp - 0x2c]
push edx
call fcn.0045ac60
mov dword [ebp - 0x412e0], eax
call fcn.00484e85
add esp, 0x24
mov eax, dword [ebp - 0x410a4]
push eax
push 0x5b2020
lea ecx, [ebp - 0x10]
push ecx
call fcn.0054ab7c
add esp, 0xc
mov edx, dword [ebp - 0x10]
push edx
mov ecx, dword [0x5c3070]
add ecx, 0x200
call fcn.00551562
mov eax, dword [ebp - 0x410a8]
mov ecx, dword [eax + 0x588]
push ecx
push 0x5b2028
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0xc
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x5c3070]
add ecx, 0xaa4
call fcn.00412a69
mov ecx, dword [ebp - 0x410a8]
mov edx, dword [ecx + 0x588]
add edx, 1
mov eax, dword [ebp - 0x410a8]
mov dword [eax + 0x588], edx
mov ecx, dword [ebp - 0x410a4]
add ecx, 1
mov dword [ebp - 0x410a4], ecx
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x410dc]
call fcn.0054d328
jmp 0x47f639
push ecx
mov esi, esp
mov dword [ebp - 0x41174], esp
push ecx
mov ecx, esp
mov dword [ebp - 0x41178], esp
push 0x5b2030
call fcn.0054d39c
mov dword [ebp - 0x412e4], eax
mov edx, dword [ebp - 0x412e4]
mov dword [ebp - 0x412e8], edx
mov byte [ebp - 4], 0x2d
push ecx
mov ecx, esp
mov dword [ebp - 0x4117c], esp
lea eax, [ebp - 0x410c8]
push eax
call fcn.0054d095
mov dword [ebp - 0x412ec], eax
push esi
lea ecx, [ebp - 0x410a0]
mov byte [ebp - 4], 0xb
call fcn.00425c70
mov dword [ebp - 0x412f0], eax
mov ecx, dword [ebp - 0x412f0]
mov dword [ebp - 0x412f4], ecx
mov byte [ebp - 4], 0x2e
push ecx
mov ecx, esp
mov dword [ebp - 0x41180], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x412f8], eax
mov eax, dword [ebp - 0x412f8]
mov dword [ebp - 0x412fc], eax
mov byte [ebp - 4], 0x2f
push ecx
mov ecx, esp
mov dword [ebp - 0x41184], esp
lea edx, [ebp - 0x30]
push edx
call fcn.0054d095
mov dword [ebp - 0x41300], eax
mov eax, dword [ebp - 0x41300]
mov dword [ebp - 0x41304], eax
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x410a0]
call fcn.00486080
push eax
mov byte [ebp - 4], 0xb
call fcn.004859b9
add esp, 0x10
mov dword [ebp - 0x41308], eax
cmp dword [ebp - 0x41308], 0
jne 0x47f639
mov dword [ebp - 0x2c], 1
mov ecx, dword [ebp - 0x1050]
mov dword [ebp - 0x411d8], ecx
mov edx, dword [ebp - 0x30]
push edx
mov eax, dword [ebp - 0x411d8]
push eax
lea ecx, [ebp - 0x41188]
push ecx
call fcn.00485900
add esp, 8
mov dword [ebp - 0x4130c], eax
mov edx, dword [ebp - 0x4130c]
mov dword [ebp - 0x41310], edx
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0x41310]
mov ecx, dword [eax]
push ecx
push 0x5b2038
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0x10
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x41188]
call fcn.0054d328
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x24]
call fcn.0054d46f
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0054d46f
lea edx, [ebp - 0x410c8]
push edx
lea ecx, [ebp - 0x20]
call fcn.0054d46f
push ecx
mov ecx, esp
mov dword [ebp - 0x4118c], esp
push 0x5b2044
call fcn.0054d39c
mov dword [ebp - 0x41314], eax
mov eax, dword [ebp - 0x41314]
mov dword [ebp - 0x41318], eax
mov byte [ebp - 4], 0x32
push ecx
mov ecx, esp
mov dword [ebp - 0x41190], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x4131c], eax
lea eax, [ebp - 0x41194]
push eax
lea ecx, [ebp - 0x410a0]
mov byte [ebp - 4], 0xb
call fcn.00425c70
mov dword [ebp - 0x41320], eax
mov ecx, dword [ebp - 0x41320]
mov dword [ebp - 0x41324], ecx
mov byte [ebp - 4], 0x33
mov edx, dword [ebp - 0x41324]
push edx
lea ecx, [ebp - 0x1c]
call fcn.0054d46f
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x41194]
call fcn.0054d328
mov dword [ebp - 0x18], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x41198], esp
push str.REGISTRY_ERROR_17
call fcn.0054d39c
mov dword [ebp - 0x41328], eax
lea eax, [ebp - 0x4119c]
push eax
mov ecx, dword [ebp - 0x410a8]
call fcn.004be333
mov dword [ebp - 0x4132c], eax
mov ecx, dword [ebp - 0x4132c]
mov dword [ebp - 0x41330], ecx
mov byte [ebp - 4], 0x34
mov edx, dword [ebp - 0x41330]
push edx
lea ecx, [ebp - 0x14]
call fcn.0054d46f
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x4119c]
call fcn.0054d328
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x411a0], esp
mov dword [ebp - 0x411dc], eax
mov ecx, dword [ebp - 0x411dc]
mov edx, dword [ebp - 0x2c]
mov dword [ecx], edx
lea eax, [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x411dc]
add ecx, 4
call fcn.0054d095
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x24]
push ecx
mov ecx, dword [ebp - 0x411dc]
add ecx, 8
call fcn.0054d095
mov byte [ebp - 4], 0x36
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x411dc]
add ecx, 0xc
call fcn.0054d095
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x411dc]
add ecx, 0x10
call fcn.0054d095
mov byte [ebp - 4], 0x38
mov ecx, dword [ebp - 0x411dc]
mov edx, dword [ebp - 0x18]
mov dword [ecx + 0x14], edx
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x411dc]
add ecx, 0x18
call fcn.0054d095
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x411dc]
mov dword [ebp - 0x41334], ecx
mov ecx, dword [ebp - 0x410a8]
add ecx, 0x2c4
call fcn.0045ada0
push 1
push 0xd
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x411a4], esp
lea edx, [ebp - 0x2c]
push edx
call fcn.0045ac60
mov dword [ebp - 0x41338], eax
call fcn.00484e85
add esp, 0x24
mov eax, dword [ebp - 0x410a4]
push eax
push 0x5b2070
lea ecx, [ebp - 0x10]
push ecx
call fcn.0054ab7c
add esp, 0xc
mov edx, dword [ebp - 0x10]
push edx
mov ecx, dword [0x5c3070]
add ecx, 0x200
call fcn.00551562
mov eax, dword [ebp - 0x410a8]
mov ecx, dword [eax + 0x588]
push ecx
push 0x5b2078
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0xc
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x5c3070]
add ecx, 0xaa4
call fcn.00412a69
mov ecx, dword [ebp - 0x410a8]
mov edx, dword [ecx + 0x588]
add edx, 1
mov eax, dword [ebp - 0x410a8]
mov dword [eax + 0x588], edx
mov ecx, dword [ebp - 0x410a4]
add ecx, 1
mov dword [ebp - 0x410a4], ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x410d4]
call fcn.0054d328
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x410d8]
call fcn.0054d328
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x410c8]
call fcn.0054d328
jmp 0x47e5bb
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x410bc]
call fcn.0054c3de
mov edx, dword [0x5c3070]
add edx, 0x14a8
mov dword [ebp - 0x411e0], edx
cmp dword [ebp - 0x411e0], 0
jne 0x47f6a1
mov dword [ebp - 0x4133c], 0
jmp 0x47f6b0
mov eax, dword [ebp - 0x411e0]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x4133c], ecx
cmp dword [ebp - 0x4133c], 0
je 0x47f75c
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b7291
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b5bcf
mov edx, dword [ebp - 0x410a8]
mov eax, dword [edx + 0x2cc]
mov dword [ebp - 0x411e4], eax
cmp dword [ebp - 0x411e4], 0
jne 0x47f72c
push 0x5b2080
push 0x114
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b6118
test eax, eax
je 0x47f72a
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b5e28
jmp 0x47f75c
push 0x5b2088
push 0x113
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b6118
test eax, eax
je 0x47f75c
mov ecx, dword [0x5c3070]
add ecx, 0x14a8
call fcn.004b5e28
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x30]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a0]
call fcn.004e71cb
mov dword [ebp - 4], 0x3c
lea ecx, [ebp - 0x14]
call fcn.0054d328
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x20]
call fcn.0054d328
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.0054d328
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret