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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56e138
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x412d4
call fcn.005374e0
push esi
push 0
mov eax, dword [0x5c3074]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x4775f8
jmp 0x478785
call fcn.0055f60b
mov ecx, dword [eax + 4]
mov dword [ebp - 0x410a8], ecx
lea edx, [ebp - 0x28]
mov dword [ebp - 0x4119c], edx
mov eax, dword [ebp - 0x4119c]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x24]
mov dword [ebp - 0x411a0], edx
mov eax, dword [ebp - 0x411a0]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x411a4], edx
mov eax, dword [ebp - 0x411a4]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x1c]
mov dword [ebp - 0x411a8], edx
mov eax, dword [ebp - 0x411a8]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x14]
mov dword [ebp - 0x411ac], edx
mov eax, dword [ebp - 0x411ac]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
mov dword [ebp - 4], 0
push 0x5b13f0
push 0x9a
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b6118
test eax, eax
je 0x4776b0
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b5e28
push 0x5b13f8
mov ecx, dword [0x5c3070]
add ecx, 0x1744
call fcn.00551562
lea ecx, [ebp - 0x4109c]
call fcn.004e70a0
mov byte [ebp - 4], 1
push 0x5b13fc
lea ecx, [ebp - 0x410a4]
call fcn.0054d39c
mov byte [ebp - 4], 2
mov dword [ebp - 0x410a0], 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 - 0x4110c], esp
lea eax, [ebp - 0x410a4]
push eax
call fcn.0054d095
mov dword [ebp - 0x411e8], eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4109c]
call fcn.004e75e4
mov dword [ebp - 0x411ec], eax
cmp dword [ebp - 0x411ec], 0
je 0x477e93
lea ecx, [ebp - 0x410bc]
call fcn.0054c3ab
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x410bc]
push ecx
lea ecx, [ebp - 0x4109c]
call fcn.004e9b9e
mov edx, dword [ebp - 0x410b4]
mov dword [ebp - 0x410c4], edx
mov dword [ebp - 0x410c0], 0
jmp 0x47778a
mov eax, dword [ebp - 0x410c0]
add eax, 1
mov dword [ebp - 0x410c0], eax
mov ecx, dword [ebp - 0x410c0]
cmp ecx, dword [ebp - 0x410c4]
jge 0x477e84
push 0
mov edx, dword [0x5c3074]
push edx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x477833
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 - 0x410a4]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x4109c]
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 0x478785
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 - 0x411b0], eax
cmp dword [ebp - 0x411b0], 0
je 0x477e70
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 - 0x41110], esp
lea eax, [ebp - 0x410c8]
push eax
call fcn.0054d095
mov dword [ebp - 0x411f0], eax
lea ecx, [ebp - 0x4109c]
call fcn.004e99fe
mov dword [ebp - 0x411f4], eax
mov ecx, dword [ebp - 0x411f4]
mov dword [ebp - 0x410d0], ecx
cmp dword [ebp - 0x410d0], 1
jne 0x477e70
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 - 0x41114], esp
push 0x5b143c
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 - 0x41118], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41200], eax
lea eax, [ebp - 0x4111c]
push eax
lea ecx, [ebp - 0x4109c]
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 - 0x4111c]
call fcn.0054d328
push 0x5b1444
mov eax, dword [ebp - 0x410d8]
push eax
call fcn.00537cf5
add esp, 8
mov dword [ebp - 0x411b4], eax
xor ecx, ecx
cmp dword [ebp - 0x411b4], 0
setne cl
and ecx, 0xff
test ecx, ecx
je 0x477e52
mov edx, dword [ebp - 0x410d8]
mov eax, dword [edx - 8]
mov dword [ebp - 0x411b8], eax
cmp dword [ebp - 0x411b8], 0
je 0x477e52
lea ecx, [ebp - 0x410d8]
call fcn.0054acc3
lea ecx, [ebp - 0x410d8]
call fcn.0054abd2
mov ecx, dword [ebp - 0x410d8]
mov edx, dword [ecx - 8]
mov dword [ebp - 0x411bc], edx
mov eax, dword [ebp - 0x411bc]
push eax
lea ecx, [ebp - 0x410d8]
call fcn.0054d76d
push eax
call dword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
push 0xffffffffffffffff
lea ecx, [ebp - 0x410d8]
call fcn.0054d7bd
push 0x5c
lea ecx, [ebp - 0x410d8]
call fcn.0054a7e6
cmp eax, 1
je 0x477a47
push 0x5b144c
lea ecx, [ebp - 0x410d8]
call fcn.0054d719
lea ecx, [ebp - 0x410c8]
push ecx
lea ecx, [ebp - 0x410d8]
call fcn.0054d755
mov edx, dword [ebp - 0x410d8]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x477e52
push ecx
mov esi, esp
mov dword [ebp - 0x41120], esp
push ecx
mov ecx, esp
mov dword [ebp - 0x41124], esp
push 0x5b1450
call fcn.0054d39c
mov dword [ebp - 0x4120c], eax
mov eax, dword [ebp - 0x4120c]
mov dword [ebp - 0x41210], eax
mov byte [ebp - 4], 0xe
push ecx
mov ecx, esp
mov dword [ebp - 0x41128], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41214], eax
push esi
lea ecx, [ebp - 0x4109c]
mov byte [ebp - 4], 0xb
call fcn.00425c70
mov dword [ebp - 0x41218], eax
mov eax, dword [ebp - 0x41218]
mov dword [ebp - 0x4121c], eax
mov byte [ebp - 4], 0xf
push ecx
mov ecx, esp
mov dword [ebp - 0x4112c], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41220], eax
mov eax, dword [ebp - 0x41220]
mov dword [ebp - 0x41224], eax
mov byte [ebp - 4], 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x41130], esp
lea edx, [ebp - 0x410a4]
push edx
call fcn.0054d095
mov dword [ebp - 0x41228], eax
mov eax, dword [ebp - 0x41228]
mov dword [ebp - 0x4122c], eax
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x4109c]
call fcn.00486080
push eax
mov byte [ebp - 4], 0xb
call fcn.004859b9
add esp, 0x10
mov dword [ebp - 0x41230], eax
cmp dword [ebp - 0x41230], 0
jne 0x477e52
mov dword [ebp - 0x2c], 1
mov ecx, dword [ebp - 0x104c]
mov dword [ebp - 0x411c0], ecx
mov edx, dword [ebp - 0x410a4]
push edx
mov eax, dword [ebp - 0x411c0]
push eax
lea ecx, [ebp - 0x41134]
push ecx
call fcn.00485900
add esp, 8
mov dword [ebp - 0x41234], eax
mov edx, dword [ebp - 0x41234]
mov dword [ebp - 0x41238], edx
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x41238]
mov ecx, dword [eax]
push ecx
push 0x5b1458
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0x10
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x41134]
call fcn.0054d328
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x24]
call fcn.0054d46f
lea ecx, [ebp - 0x410a4]
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 - 0x41138], esp
push 0x5b1464
call fcn.0054d39c
mov dword [ebp - 0x4123c], eax
mov eax, dword [ebp - 0x4123c]
mov dword [ebp - 0x41240], eax
mov byte [ebp - 4], 0x13
push ecx
mov ecx, esp
mov dword [ebp - 0x4113c], esp
lea edx, [ebp - 0x410c8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41244], eax
lea eax, [ebp - 0x41140]
push eax
lea ecx, [ebp - 0x4109c]
mov byte [ebp - 4], 0xb
call fcn.00425c70
mov dword [ebp - 0x41248], eax
mov ecx, dword [ebp - 0x41248]
mov dword [ebp - 0x4124c], ecx
mov byte [ebp - 4], 0x14
mov edx, dword [ebp - 0x4124c]
push edx
lea ecx, [ebp - 0x1c]
call fcn.0054d46f
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x41140]
call fcn.0054d328
mov dword [ebp - 0x18], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x41144], esp
push 0x5b146c
call fcn.0054d39c
mov dword [ebp - 0x41250], eax
lea eax, [ebp - 0x41148]
push eax
mov ecx, dword [ebp - 0x410a8]
call fcn.004be333
mov dword [ebp - 0x41254], eax
mov ecx, dword [ebp - 0x41254]
mov dword [ebp - 0x41258], ecx
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x41258]
push edx
lea ecx, [ebp - 0x14]
call fcn.0054d46f
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x41148]
call fcn.0054d328
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x4114c], esp
mov dword [ebp - 0x411c4], eax
mov ecx, dword [ebp - 0x411c4]
mov edx, dword [ebp - 0x2c]
mov dword [ecx], edx
lea eax, [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x411c4]
add ecx, 4
call fcn.0054d095
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x24]
push ecx
mov ecx, dword [ebp - 0x411c4]
add ecx, 8
call fcn.0054d095
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x411c4]
add ecx, 0xc
call fcn.0054d095
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x411c4]
add ecx, 0x10
call fcn.0054d095
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x411c4]
mov edx, dword [ebp - 0x18]
mov dword [ecx + 0x14], edx
lea eax, [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x411c4]
add ecx, 0x18
call fcn.0054d095
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x411c4]
mov dword [ebp - 0x4125c], ecx
mov ecx, dword [ebp - 0x410a8]
add ecx, 0x260
call fcn.0045ada0
push 1
push 6
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x41150], esp
lea edx, [ebp - 0x2c]
push edx
call fcn.0045ac60
mov dword [ebp - 0x41260], eax
call fcn.00484e85
add esp, 0x24
mov eax, dword [ebp - 0x410a0]
push eax
push 0x5b1490
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, 0x1744
call fcn.00551562
mov eax, dword [ebp - 0x410a8]
mov ecx, dword [eax + 0x588]
push ecx
push 0x5b1498
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 - 0x410a0]
add ecx, 1
mov dword [ebp - 0x410a0], 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 0x47777b
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x410bc]
call fcn.0054c3de
push str.SOFTWAREMicrosoftWindowsHtml_Help
lea ecx, [ebp - 0x410a4]
call fcn.0054d4bf
push 1
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x41154], esp
lea edx, [ebp - 0x410a4]
push edx
call fcn.0054d095
mov dword [ebp - 0x41264], eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4109c]
call fcn.004e75e4
mov dword [ebp - 0x41268], eax
cmp dword [ebp - 0x41268], 0
je 0x478637
lea ecx, [ebp - 0x410ec]
call fcn.0054c3ab
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x410ec]
push eax
lea ecx, [ebp - 0x4109c]
call fcn.004e9b9e
mov ecx, dword [ebp - 0x410e4]
mov dword [ebp - 0x410f4], ecx
mov dword [ebp - 0x410f0], 0
jmp 0x477f2d
mov edx, dword [ebp - 0x410f0]
add edx, 1
mov dword [ebp - 0x410f0], edx
mov eax, dword [ebp - 0x410f0]
cmp eax, dword [ebp - 0x410f4]
jge 0x478628
push 0
mov ecx, dword [0x5c3074]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x477fd6
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x410ec]
call fcn.0054c3de
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410a4]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x4109c]
call fcn.004e71cb
mov dword [ebp - 4], 0x1e
lea ecx, [ebp - 0x14]
call fcn.0054d328
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x20]
call fcn.0054d328
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.0054d328
jmp 0x478785
mov edx, dword [ebp - 0x410f0]
push edx
lea eax, [ebp - 0x410f8]
push eax
lea ecx, [ebp - 0x410ec]
call fcn.00419890
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x410f8]
mov edx, dword [ecx - 8]
mov dword [ebp - 0x411c8], edx
cmp dword [ebp - 0x411c8], 0
je 0x478614
mov eax, dword [ebp - 0x410f8]
push eax
mov ecx, dword [0x5c3070]
add ecx, 0xb14
call fcn.00551562
mov dword [ebp - 0x410fc], 0
lea ecx, [ebp - 0x410fc]
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x41158], esp
lea edx, [ebp - 0x410f8]
push edx
call fcn.0054d095
mov dword [ebp - 0x4126c], eax
lea ecx, [ebp - 0x4109c]
call fcn.004e99fe
mov dword [ebp - 0x41270], eax
mov eax, dword [ebp - 0x41270]
mov dword [ebp - 0x41100], eax
cmp dword [ebp - 0x41100], 1
jne 0x478614
mov ecx, dword [0x5be480]
mov dword [ebp - 0x41108], ecx
mov byte [ebp - 4], 0x20
mov edx, dword [0x5be480]
mov dword [ebp - 0x41104], edx
mov byte [ebp - 4], 0x21
push ecx
mov ecx, esp
mov dword [ebp - 0x4115c], esp
push 0x5b14ec
call fcn.0054d39c
mov dword [ebp - 0x41274], eax
mov eax, dword [ebp - 0x41274]
mov dword [ebp - 0x41278], eax
mov byte [ebp - 4], 0x22
push ecx
mov ecx, esp
mov dword [ebp - 0x41160], esp
lea edx, [ebp - 0x410f8]
push edx
call fcn.0054d095
mov dword [ebp - 0x4127c], eax
lea eax, [ebp - 0x41164]
push eax
lea ecx, [ebp - 0x4109c]
mov byte [ebp - 4], 0x21
call fcn.00425c70
mov dword [ebp - 0x41280], eax
mov ecx, dword [ebp - 0x41280]
mov dword [ebp - 0x41284], ecx
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x41284]
push edx
lea ecx, [ebp - 0x41108]
call fcn.0054d46f
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x41164]
call fcn.0054d328
push 0x5b14f4
mov eax, dword [ebp - 0x41108]
push eax
call fcn.00537cf5
add esp, 8
mov dword [ebp - 0x411cc], eax
xor ecx, ecx
cmp dword [ebp - 0x411cc], 0
setne cl
and ecx, 0xff
test ecx, ecx
je 0x4785f6
mov edx, dword [ebp - 0x41108]
mov eax, dword [edx - 8]
mov dword [ebp - 0x411d0], eax
cmp dword [ebp - 0x411d0], 0
je 0x4785f6
lea ecx, [ebp - 0x41108]
call fcn.0054acc3
lea ecx, [ebp - 0x41108]
call fcn.0054abd2
mov ecx, dword [ebp - 0x41108]
mov edx, dword [ecx - 8]
mov dword [ebp - 0x411d4], edx
mov eax, dword [ebp - 0x411d4]
push eax
lea ecx, [ebp - 0x41108]
call fcn.0054d76d
push eax
call dword [sym.imp.SHLWAPI.dll_PathUnquoteSpacesW]
push 0xffffffffffffffff
lea ecx, [ebp - 0x41108]
call fcn.0054d7bd
push 0x5c
lea ecx, [ebp - 0x41108]
call fcn.0054a7e6
cmp eax, 1
je 0x4781eb
push 0x5b14fc
lea ecx, [ebp - 0x41108]
call fcn.0054d719
lea ecx, [ebp - 0x410f8]
push ecx
lea ecx, [ebp - 0x41108]
call fcn.0054d755
mov edx, dword [ebp - 0x41108]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4785f6
push ecx
mov esi, esp
mov dword [ebp - 0x41168], esp
push ecx
mov ecx, esp
mov dword [ebp - 0x4116c], esp
push 0x5b1500
call fcn.0054d39c
mov dword [ebp - 0x41288], eax
mov eax, dword [ebp - 0x41288]
mov dword [ebp - 0x4128c], eax
mov byte [ebp - 4], 0x24
push ecx
mov ecx, esp
mov dword [ebp - 0x41170], esp
lea edx, [ebp - 0x410f8]
push edx
call fcn.0054d095
mov dword [ebp - 0x41290], eax
push esi
lea ecx, [ebp - 0x4109c]
mov byte [ebp - 4], 0x21
call fcn.00425c70
mov dword [ebp - 0x41294], eax
mov eax, dword [ebp - 0x41294]
mov dword [ebp - 0x41298], eax
mov byte [ebp - 4], 0x25
push ecx
mov ecx, esp
mov dword [ebp - 0x41174], esp
lea edx, [ebp - 0x410f8]
push edx
call fcn.0054d095
mov dword [ebp - 0x4129c], eax
mov eax, dword [ebp - 0x4129c]
mov dword [ebp - 0x412a0], eax
mov byte [ebp - 4], 0x26
push ecx
mov ecx, esp
mov dword [ebp - 0x41178], esp
lea edx, [ebp - 0x410a4]
push edx
call fcn.0054d095
mov dword [ebp - 0x412a4], eax
mov eax, dword [ebp - 0x412a4]
mov dword [ebp - 0x412a8], eax
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x4109c]
call fcn.00486080
push eax
mov byte [ebp - 4], 0x21
call fcn.004859b9
add esp, 0x10
mov dword [ebp - 0x412ac], eax
cmp dword [ebp - 0x412ac], 0
jne 0x4785f6
mov dword [ebp - 0x2c], 1
mov ecx, dword [ebp - 0x104c]
mov dword [ebp - 0x411d8], ecx
mov edx, dword [ebp - 0x410a4]
push edx
mov eax, dword [ebp - 0x411d8]
push eax
lea ecx, [ebp - 0x4117c]
push ecx
call fcn.00485900
add esp, 8
mov dword [ebp - 0x412b0], eax
mov edx, dword [ebp - 0x412b0]
mov dword [ebp - 0x412b4], edx
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x412b4]
mov ecx, dword [eax]
push ecx
push 0x5b1508
lea edx, [ebp - 0x10]
push edx
call fcn.0054ab7c
add esp, 0x10
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x4117c]
call fcn.0054d328
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x24]
call fcn.0054d46f
lea ecx, [ebp - 0x410a4]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0054d46f
lea edx, [ebp - 0x410f8]
push edx
lea ecx, [ebp - 0x20]
call fcn.0054d46f
push ecx
mov ecx, esp
mov dword [ebp - 0x41180], esp
push 0x5b1514
call fcn.0054d39c
mov dword [ebp - 0x412b8], eax
mov eax, dword [ebp - 0x412b8]
mov dword [ebp - 0x412bc], eax
mov byte [ebp - 4], 0x29
push ecx
mov ecx, esp
mov dword [ebp - 0x41184], esp
lea edx, [ebp - 0x410f8]
push edx
call fcn.0054d095
mov dword [ebp - 0x412c0], eax
lea eax, [ebp - 0x41188]
push eax
lea ecx, [ebp - 0x4109c]
mov byte [ebp - 4], 0x21
call fcn.00425c70
mov dword [ebp - 0x412c4], eax
mov ecx, dword [ebp - 0x412c4]
mov dword [ebp - 0x412c8], ecx
mov byte [ebp - 4], 0x2a
mov edx, dword [ebp - 0x412c8]
push edx
lea ecx, [ebp - 0x1c]
call fcn.0054d46f
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x41188]
call fcn.0054d328
mov dword [ebp - 0x18], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x4118c], esp
push str.REGISTRY_ERROR_25
call fcn.0054d39c
mov dword [ebp - 0x412cc], eax
lea eax, [ebp - 0x41190]
push eax
mov ecx, dword [ebp - 0x410a8]
call fcn.004be333
mov dword [ebp - 0x412d0], eax
mov ecx, dword [ebp - 0x412d0]
mov dword [ebp - 0x412d4], ecx
mov byte [ebp - 4], 0x2b
mov edx, dword [ebp - 0x412d4]
push edx
lea ecx, [ebp - 0x14]
call fcn.0054d46f
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x41190]
call fcn.0054d328
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x41194], 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], 0x2c
lea ecx, [ebp - 0x24]
push ecx
mov ecx, dword [ebp - 0x411dc]
add ecx, 8
call fcn.0054d095
mov byte [ebp - 4], 0x2d
lea edx, [ebp - 0x20]
push edx
mov ecx, dword [ebp - 0x411dc]
add ecx, 0xc
call fcn.0054d095
mov byte [ebp - 4], 0x2e
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp - 0x411dc]
add ecx, 0x10
call fcn.0054d095
mov byte [ebp - 4], 0x2f
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], 0x21
mov ecx, dword [ebp - 0x411dc]
mov dword [ebp - 0x412d8], ecx
mov ecx, dword [ebp - 0x410a8]
add ecx, 0x260
call fcn.0045ada0
push 1
push 6
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x41198], esp
lea edx, [ebp - 0x2c]
push edx
call fcn.0045ac60
mov dword [ebp - 0x412dc], eax
call fcn.00484e85
add esp, 0x24
mov eax, dword [ebp - 0x410a0]
push eax
push 0x5b1540
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, 0x1744
call fcn.00551562
mov eax, dword [ebp - 0x410a8]
mov ecx, dword [eax + 0x588]
push ecx
push 0x5b1548
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 - 0x410a0]
add ecx, 1
mov dword [ebp - 0x410a0], ecx
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x41104]
call fcn.0054d328
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x41108]
call fcn.0054d328
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x410f8]
call fcn.0054d328
jmp 0x477f1e
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x410ec]
call fcn.0054c3de
mov edx, dword [0x5c3070]
add edx, 0xfa0
mov dword [ebp - 0x411e0], edx
cmp dword [ebp - 0x411e0], 0
jne 0x47865e
mov dword [ebp - 0x412e0], 0
jmp 0x47866d
mov eax, dword [ebp - 0x411e0]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x412e0], ecx
cmp dword [ebp - 0x412e0], 0
je 0x478719
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b7291
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b5bcf
mov edx, dword [ebp - 0x410a8]
mov eax, dword [edx + 0x268]
mov dword [ebp - 0x411e4], eax
cmp dword [ebp - 0x411e4], 0
jne 0x4786e9
push 0x5b1550
push 0x114
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b6118
test eax, eax
je 0x4786e7
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b5e28
jmp 0x478719
push 0x5b1558
push 0x113
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b6118
test eax, eax
je 0x478719
mov ecx, dword [0x5c3070]
add ecx, 0xfa0
call fcn.004b5e28
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410a4]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x4109c]
call fcn.004e71cb
mov dword [ebp - 4], 0x33
lea ecx, [ebp - 0x14]
call fcn.0054d328
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x20]
call fcn.0054d328
mov byte [ebp - 4], 0x30
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