Function at 0x478794
Capabilities:
Contain obfuscated stackstrings
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56e352
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x41204
call fcn.005374e0
push 0
mov eax, dword [0x5c3074]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x4787cd
jmp 0x4795d9
call fcn.0055f60b
mov ecx, dword [eax + 4]
mov dword [ebp - 0x410b4], ecx
lea edx, [ebp - 0x30]
mov dword [ebp - 0x41140], edx
mov eax, dword [ebp - 0x41140]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x41144], edx
mov eax, dword [ebp - 0x41144]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x28]
mov dword [ebp - 0x41148], edx
mov eax, dword [ebp - 0x41148]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x24]
mov dword [ebp - 0x4114c], edx
mov eax, dword [ebp - 0x4114c]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
lea edx, [ebp - 0x1c]
mov dword [ebp - 0x41150], edx
mov eax, dword [ebp - 0x41150]
mov ecx, dword [0x5be480]
mov dword [eax], ecx
mov dword [ebp - 4], 0
push 0x5b1560
push 0x9a
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b6118
test eax, eax
je 0x478885
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b5e28
push 0x5b1568
mov ecx, dword [0x5c3070]
add ecx, 0x18ac
call fcn.00551562
lea ecx, [ebp - 0x410a4]
call fcn.004e70a0
mov byte [ebp - 4], 1
mov edx, dword [0x5be480]
mov dword [ebp - 0x410b0], edx
mov byte [ebp - 4], 2
mov eax, dword [0x5be480]
mov dword [ebp - 0x410ac], eax
mov byte [ebp - 4], 3
mov ecx, dword [0x5be480]
mov dword [ebp - 0x10], ecx
mov byte [ebp - 4], 4
push 0x5b156c
lea ecx, [ebp - 0x10]
call fcn.0054d4bf
push 1
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x410ec], esp
lea edx, [ebp - 0x10]
push edx
call fcn.0054d095
mov dword [ebp - 0x41180], eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x410a4]
call fcn.004e75e4
mov dword [ebp - 0x41184], eax
cmp dword [ebp - 0x41184], 0
jne 0x4789a2
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x410ac]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410b0]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a4]
call fcn.004e71cb
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call fcn.0054d328
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2c]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.0054d328
jmp 0x4795d9
push ecx
mov ecx, esp
mov dword [ebp - 0x410f0], esp
push 0x5b15f0
call fcn.0054d39c
mov dword [ebp - 0x41188], eax
mov eax, dword [ebp - 0x41188]
mov dword [ebp - 0x4118c], eax
mov byte [ebp - 4], 9
push ecx
mov ecx, esp
mov dword [ebp - 0x410f4], esp
push 0x5b15f8
call fcn.0054d39c
mov dword [ebp - 0x41190], eax
lea ecx, [ebp - 0x410f8]
push ecx
lea ecx, [ebp - 0x410a4]
mov byte [ebp - 4], 4
call fcn.00425c70
mov dword [ebp - 0x41194], eax
mov edx, dword [ebp - 0x41194]
mov dword [ebp - 0x41198], edx
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x41198]
push eax
lea ecx, [ebp - 0x410b0]
call fcn.0054d46f
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x410f8]
call fcn.0054d328
mov ecx, dword [ebp - 0x410b0]
mov edx, dword [ecx - 8]
mov dword [ebp - 0x41154], edx
cmp dword [ebp - 0x41154], 0
je 0x478a7d
push 0x5b1618
mov eax, dword [ebp - 0x410b0]
push eax
call fcn.00537cf5
add esp, 8
mov dword [ebp - 0x41158], eax
xor ecx, ecx
cmp dword [ebp - 0x41158], 0
sete cl
and ecx, 0xff
test ecx, ecx
je 0x478afd
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x410ac]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410b0]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a4]
call fcn.004e71cb
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x28]
call fcn.0054d328
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2c]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.0054d328
jmp 0x4795d9
push 0x5c
lea ecx, [ebp - 0x410b0]
call fcn.0054a7e6
cmp eax, 1
je 0x478b1f
push 0x5b1620
lea ecx, [ebp - 0x410b0]
call fcn.0054d719
push 1
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x410fc], esp
lea edx, [ebp - 0x10]
push edx
call fcn.0054d095
mov dword [ebp - 0x4119c], eax
push SysReAllocStringLen
lea ecx, [ebp - 0x410a4]
call fcn.004e75e4
mov dword [ebp - 0x411a0], eax
cmp dword [ebp - 0x411a0], 0
jne 0x478bde
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x410ac]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410b0]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a4]
call fcn.004e71cb
mov dword [ebp - 4], 0x12
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x28]
call fcn.0054d328
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x2c]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.0054d328
jmp 0x4795d9
push ecx
mov ecx, esp
mov dword [ebp - 0x41100], esp
push 0x5b1624
call fcn.0054d39c
mov dword [ebp - 0x411a4], eax
mov eax, dword [ebp - 0x411a4]
mov dword [ebp - 0x411a8], eax
mov byte [ebp - 4], 0x13
push ecx
mov ecx, esp
mov dword [ebp - 0x41104], esp
push 0x5b162c
call fcn.0054d39c
mov dword [ebp - 0x411ac], eax
lea ecx, [ebp - 0x41108]
push ecx
lea ecx, [ebp - 0x410a4]
mov byte [ebp - 4], 4
call fcn.00425c70
mov dword [ebp - 0x411b0], eax
mov edx, dword [ebp - 0x411b0]
mov dword [ebp - 0x411b4], edx
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x411b4]
push eax
lea ecx, [ebp - 0x410ac]
call fcn.0054d46f
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x41108]
call fcn.0054d328
mov ecx, dword [ebp - 0x410ac]
mov edx, dword [ecx - 8]
mov dword [ebp - 0x4115c], edx
cmp dword [ebp - 0x4115c], 0
je 0x478cb9
push 0x5b1640
mov eax, dword [ebp - 0x410ac]
push eax
call fcn.00537cf5
add esp, 8
mov dword [ebp - 0x41160], eax
xor ecx, ecx
cmp dword [ebp - 0x41160], 0
sete cl
and ecx, 0xff
test ecx, ecx
je 0x478d39
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x410ac]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410b0]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a4]
call fcn.004e71cb
mov dword [ebp - 4], 0x18
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x28]
call fcn.0054d328
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x2c]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.0054d328
jmp 0x4795d9
push 0x5c
lea ecx, [ebp - 0x410ac]
call fcn.0054a7e6
cmp eax, 1
je 0x478d5b
push 0x5b1648
lea ecx, [ebp - 0x410ac]
call fcn.0054d719
push 0xffffffffffffffff
push 0
mov ecx, dword [ebp - 0x410b4]
add ecx, 0x160
call fcn.0054c43e
push ecx
mov ecx, esp
mov dword [ebp - 0x4110c], esp
lea edx, [ebp - 0x410b0]
push edx
call fcn.0054d095
mov dword [ebp - 0x411b8], eax
call fcn.004795e7
add esp, 4
push ecx
mov ecx, esp
mov dword [ebp - 0x41110], esp
lea eax, [ebp - 0x410ac]
push eax
call fcn.0054d095
mov dword [ebp - 0x411bc], eax
call fcn.004795e7
add esp, 4
push 0x5b164c
lea ecx, [ebp - 0x18]
call fcn.0054d39c
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x410a8], 1
mov ecx, dword [0x5be480]
mov dword [ebp - 0x14], ecx
mov byte [ebp - 4], 0x1a
push 1
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x41114], esp
lea edx, [ebp - 0x18]
push edx
call fcn.0054d095
mov dword [ebp - 0x411c0], eax
push SysReAllocStringLen
lea ecx, [ebp - 0x410a4]
call fcn.004e75e4
mov dword [ebp - 0x411c4], eax
cmp dword [ebp - 0x411c4], 0
je 0x479464
lea ecx, [ebp - 0x410d0]
call fcn.0054c3ab
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x410d0]
push eax
lea ecx, [ebp - 0x410a4]
call fcn.004e7dd7
mov ecx, dword [ebp - 0x410c8]
mov dword [ebp - 0x410bc], ecx
mov edx, dword [ebp - 0x410b4]
mov eax, dword [edx + 0x168]
mov dword [ebp - 0x410b8], eax
mov dword [ebp - 0x410d4], 0
jmp 0x478e77
mov ecx, dword [ebp - 0x410d4]
add ecx, 1
mov dword [ebp - 0x410d4], ecx
mov edx, dword [ebp - 0x410d4]
cmp edx, dword [ebp - 0x410bc]
jge 0x479455
push 0
mov eax, dword [0x5c3074]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x478f46
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x410d0]
call fcn.0054c3de
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x14]
call fcn.0054d328
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x18]
call fcn.0054d328
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x410ac]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410b0]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a4]
call fcn.004e71cb
mov dword [ebp - 4], 0x1f
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x28]
call fcn.0054d328
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x2c]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.0054d328
jmp 0x4795d9
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x410e4]
call fcn.0054d095
mov byte [ebp - 4], 0x20
push 0x5b16f0
lea ecx, [ebp - 0x410e4]
call fcn.0054d719
mov edx, dword [ebp - 0x410d4]
push edx
lea eax, [ebp - 0x41118]
push eax
lea ecx, [ebp - 0x410d0]
call fcn.00419890
mov dword [ebp - 0x411c8], eax
mov ecx, dword [ebp - 0x411c8]
mov dword [ebp - 0x411cc], ecx
mov byte [ebp - 4], 0x21
mov edx, dword [ebp - 0x411cc]
push edx
lea ecx, [ebp - 0x410e4]
call fcn.0054d755
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x41118]
call fcn.0054d328
mov eax, dword [ebp - 0x1054]
mov dword [ebp - 0x41164], eax
mov ecx, dword [ebp - 0x410e4]
push ecx
mov edx, dword [ebp - 0x41164]
push edx
lea eax, [ebp - 0x4111c]
push eax
call fcn.00485900
add esp, 8
mov dword [ebp - 0x411d0], eax
mov ecx, dword [ebp - 0x411d0]
mov dword [ebp - 0x411d4], ecx
mov byte [ebp - 4], 0x22
mov edx, dword [ebp - 0x411d4]
mov eax, dword [edx]
push eax
push 0x5b16f4
lea ecx, [ebp - 0x14]
push ecx
call fcn.0054ab7c
add esp, 0x10
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x4111c]
call fcn.0054d328
mov edx, dword [ebp - 0x14]
push edx
mov ecx, dword [0x5c3070]
add ecx, 0xb14
call fcn.00551562
mov eax, dword [ebp - 0x410cc]
mov ecx, dword [ebp - 0x410d4]
lea edx, [eax + ecx*4]
push edx
lea ecx, [ebp - 0x410e0]
call fcn.0054d095
mov byte [ebp - 4], 0x23
mov eax, dword [0x5be480]
mov dword [ebp - 0x410dc], eax
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x410d8], 0
mov dword [ebp - 0x410e8], 0
jmp 0x479089
mov ecx, dword [ebp - 0x410e8]
add ecx, 1
mov dword [ebp - 0x410e8], ecx
mov edx, dword [ebp - 0x410e8]
cmp edx, dword [ebp - 0x410b8]
jge 0x479107
mov eax, dword [ebp - 0x410b4]
mov ecx, dword [eax + 0x164]
mov edx, dword [ebp - 0x410e8]
lea eax, [ecx + edx*4]
push eax
lea ecx, [ebp - 0x410dc]
call fcn.0054d46f
mov ecx, dword [ebp - 0x410dc]
mov dword [ebp - 0x41168], ecx
mov edx, dword [ebp - 0x41168]
push edx
mov eax, dword [ebp - 0x410e0]
push eax
call fcn.00537cf5
add esp, 8
mov dword [ebp - 0x4116c], eax
xor ecx, ecx
cmp dword [ebp - 0x4116c], 0
sete cl
and ecx, 0xff
test ecx, ecx
je 0x479102
mov dword [ebp - 0x410d8], 1
jmp 0x479107
jmp 0x47907a
cmp dword [ebp - 0x410d8], 0
jne 0x479423
push ecx
mov ecx, esp
mov dword [ebp - 0x41120], esp
push 0x5c3320
call fcn.0054d39c
mov dword [ebp - 0x411d8], eax
mov edx, dword [ebp - 0x411d8]
mov dword [ebp - 0x411dc], edx
mov byte [ebp - 4], 0x25
push ecx
mov ecx, esp
mov dword [ebp - 0x41124], esp
push 0x5c3324
call fcn.0054d39c
mov dword [ebp - 0x411e0], eax
mov eax, dword [ebp - 0x411e0]
mov dword [ebp - 0x411e4], eax
mov byte [ebp - 4], 0x26
push ecx
mov ecx, esp
mov dword [ebp - 0x41128], esp
lea edx, [ebp - 0x18]
push edx
call fcn.0054d095
mov dword [ebp - 0x411e8], eax
mov eax, dword [ebp - 0x411e8]
mov dword [ebp - 0x411ec], eax
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x410a4]
call fcn.00486080
push eax
mov byte [ebp - 4], 0x24
call fcn.004859b9
add esp, 0x10
mov dword [ebp - 0x411f0], eax
cmp dword [ebp - 0x411f0], 0
jne 0x479423
mov dword [ebp - 0x34], 0
mov ecx, dword [ebp - 0x1054]
mov dword [ebp - 0x41170], ecx
mov edx, dword [ebp - 0x410e4]
push edx
mov eax, dword [ebp - 0x41170]
push eax
lea ecx, [ebp - 0x4112c]
push ecx
call fcn.00485900
add esp, 8
mov dword [ebp - 0x411f4], eax
mov edx, dword [ebp - 0x411f4]
mov dword [ebp - 0x411f8], edx
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x411f8]
mov ecx, dword [eax]
push ecx
push 0x5b1700
lea edx, [ebp - 0x14]
push edx
call fcn.0054ab7c
add esp, 0x10
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x4112c]
call fcn.0054d328
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x2c]
call fcn.0054d46f
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x30]
call fcn.0054d46f
push 0x5c3328
lea ecx, [ebp - 0x28]
call fcn.0054d4bf
push 0x5c332c
lea ecx, [ebp - 0x24]
call fcn.0054d4bf
mov dword [ebp - 0x20], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x41130], esp
push str.REGISTRY_ERROR_22
call fcn.0054d39c
mov dword [ebp - 0x411fc], eax
lea edx, [ebp - 0x41134]
push edx
mov ecx, dword [ebp - 0x410b4]
call fcn.004be333
mov dword [ebp - 0x41200], eax
mov eax, dword [ebp - 0x41200]
mov dword [ebp - 0x41204], eax
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x41204]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.0054d46f
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x41134]
call fcn.0054d328
sub esp, 0x1c
mov edx, esp
mov dword [ebp - 0x41138], esp
mov dword [ebp - 0x41174], edx
mov eax, dword [ebp - 0x41174]
mov ecx, dword [ebp - 0x34]
mov dword [eax], ecx
lea edx, [ebp - 0x30]
push edx
mov ecx, dword [ebp - 0x41174]
add ecx, 4
call fcn.0054d095
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x41174]
add ecx, 8
call fcn.0054d095
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x28]
push ecx
mov ecx, dword [ebp - 0x41174]
add ecx, 0xc
call fcn.0054d095
mov byte [ebp - 4], 0x2c
lea edx, [ebp - 0x24]
push edx
mov ecx, dword [ebp - 0x41174]
add ecx, 0x10
call fcn.0054d095
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp - 0x41174]
mov ecx, dword [ebp - 0x20]
mov dword [eax + 0x14], ecx
lea edx, [ebp - 0x1c]
push edx
mov ecx, dword [ebp - 0x41174]
add ecx, 0x18
call fcn.0054d095
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0x41174]
mov dword [ebp - 0x41208], eax
mov ecx, dword [ebp - 0x410b4]
add ecx, 0x274
call fcn.0045ada0
push 1
push 0xc
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x4113c], esp
lea edx, [ebp - 0x34]
push edx
call fcn.0045ac60
mov dword [ebp - 0x4120c], eax
call fcn.00484e85
add esp, 0x24
mov eax, dword [ebp - 0x410a8]
push eax
push 0x5b1730
lea ecx, [ebp - 0x14]
push ecx
call fcn.0054ab7c
add esp, 0xc
mov edx, dword [ebp - 0x14]
push edx
mov ecx, dword [0x5c3070]
add ecx, 0x18ac
call fcn.00551562
mov eax, dword [ebp - 0x410b4]
mov ecx, dword [eax + 0x588]
push ecx
push 0x5b1738
lea edx, [ebp - 0x14]
push edx
call fcn.0054ab7c
add esp, 0xc
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [0x5c3070]
add ecx, 0xaa4
call fcn.00412a69
mov ecx, dword [ebp - 0x410b4]
mov edx, dword [ecx + 0x588]
add edx, 1
mov eax, dword [ebp - 0x410b4]
mov dword [eax + 0x588], edx
mov ecx, dword [ebp - 0x410a8]
add ecx, 1
mov dword [ebp - 0x410a8], ecx
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x410dc]
call fcn.0054d328
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x410e0]
call fcn.0054d328
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x410e4]
call fcn.0054d328
jmp 0x478e68
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x410d0]
call fcn.0054c3de
mov edx, dword [0x5c3070]
add edx, 0x13f0
mov dword [ebp - 0x41178], edx
cmp dword [ebp - 0x41178], 0
jne 0x47948b
mov dword [ebp - 0x41210], 0
jmp 0x47949a
mov eax, dword [ebp - 0x41178]
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x41210], ecx
cmp dword [ebp - 0x41210], 0
je 0x479546
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b7291
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b5bcf
mov edx, dword [ebp - 0x410b4]
mov eax, dword [edx + 0x27c]
mov dword [ebp - 0x4117c], eax
cmp dword [ebp - 0x4117c], 0
jne 0x479516
push 0x5b1740
push 0x114
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b6118
test eax, eax
je 0x479514
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b5e28
jmp 0x479546
push 0x5b1748
push 0x113
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b6118
test eax, eax
je 0x479546
mov ecx, dword [0x5c3070]
add ecx, 0x13f0
call fcn.004b5e28
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x14]
call fcn.0054d328
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x18]
call fcn.0054d328
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
call fcn.0054d328
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x410ac]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x410b0]
call fcn.0054d328
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x410a4]
call fcn.004e71cb
mov dword [ebp - 4], 0x31
lea ecx, [ebp - 0x1c]
call fcn.0054d328
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x28]
call fcn.0054d328
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x2c]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call fcn.0054d328
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret