Function at 0x4d452c
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
mov ecx, 8
push 0
push 0
dec ecx
jne 0x4d4534
push ecx
xor eax, eax
push ebp
push 0x4d4a94
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x4e2700]
cmp byte [eax], 1
jne 0x4d4a6c
mov eax, 0x4e201c
mov edx, 0x4d4aa8
call fcn.00404220
lea edx, [ebp - 4]
mov eax, 0x4d4ab4
call fcn.004d2230
mov eax, dword [ebp - 4]
mov edx, 0x4d4ac4
call fcn.004045d8
jne 0x4d4708
cmp dword [0x4e2018], 0
jne 0x4d45f7
mov edx, dword [0x4e26a8]
mov edx, dword [edx]
lea eax, [ebp - 8]
mov ecx, 0x4d4ad0
call fcn.004044d8
mov eax, dword [ebp - 8]
call fcn.0040468c
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [0x4e2018], eax
push 0x4d4ae0
mov eax, dword [0x4e2018]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4e4568], eax
push 0x4d4aec
mov eax, dword [0x4e2018]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4e456c], eax
push 0x4d4af8
mov eax, dword [0x4e2018]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4e4570], eax
push 0x4d4b04
call dword [0x4e4570]
mov edx, eax
mov eax, 0x4e4564
call fcn.004043c4
mov eax, dword [0x4e4564]
mov edx, 0x4d4b34
call fcn.004045d8
jne 0x4d4a6c
lea edx, [ebp - 0xc]
mov eax, 0x4d4b40
call fcn.004d2230
mov edx, dword [ebp - 0xc]
mov eax, 0x4e2014
call fcn.00404220
cmp dword [0x4e2014], 0
je 0x4d4708
mov eax, dword [0x4e2014]
mov edx, 0x4d4b54
call fcn.004045d8
je 0x4d4708
mov eax, dword [0x4e2014]
mov edx, 0x4d4b60
call fcn.004045d8
je 0x4d4708
mov eax, dword [0x4e22f8]
mov eax, dword [eax]
call fcn.00408fa4
test al, al
je 0x4d46c4
push 0xc8
mov eax, dword [0x4e22f8]
mov eax, dword [eax]
call fcn.0040468c
push eax
push 0x3ea
mov eax, dword [0x4e2014]
call fcn.0040468c
push eax
call dword [0x4e4568]
mov edx, eax
mov eax, 0x4e2010
call fcn.004043c4
push 0xc8
call sub.kernel32.dll_Sleep_1
jmp 0x4d4708
mov eax, dword [0x4e247c]
mov eax, dword [eax]
call fcn.00408fa4
test al, al
je 0x4d4708
push 0xc8
mov eax, dword [0x4e247c]
mov eax, dword [eax]
call fcn.0040468c
push eax
push 0x3ea
mov eax, dword [0x4e2014]
call fcn.0040468c
push eax
call dword [0x4e4568]
mov edx, eax
mov eax, 0x4e2010
call fcn.004043c4
lea edx, [ebp - 0x10]
mov eax, 0x4d4b6c
call fcn.004d2230
mov eax, dword [ebp - 0x10]
mov edx, 0x4d4ac4
call fcn.004045d8
jne 0x4d48a3
cmp dword [0x4e2024], 0
jne 0x4d476c
lea eax, [ebp - 0x14]
mov ecx, 0x4d4b80
mov edx, dword [0x4e4590]
call fcn.004044d8
mov eax, dword [ebp - 0x14]
call fcn.0040468c
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [0x4e2024], eax
push 0x4d4b90
mov eax, dword [0x4e2024]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4e4574], eax
lea edx, [ebp - 0x18]
mov eax, 0x4d4ba0
call fcn.004d2230
mov edx, dword [ebp - 0x18]
mov eax, 0x4e2020
call fcn.00404220
cmp dword [0x4e2020], 0
je 0x4d48a3
mov eax, dword [0x4e2020]
mov edx, 0x4d4b54
call fcn.004045d8
je 0x4d48a3
mov eax, dword [0x4e2020]
mov edx, 0x4d4b60
call fcn.004045d8
je 0x4d48a3
mov eax, dword [0x4e22f8]
mov eax, dword [eax]
call fcn.00408fa4
test al, al
je 0x4d4831
mov eax, dword [0x4e22f8]
mov eax, dword [eax]
call fcn.0040468c
push eax
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [0x4e2020]
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0xb
mov eax, 0x4d4bb8
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x28], 0xb
mov eax, 0x4d4bc8
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
lea edx, [ebp - 0x34]
mov ecx, 2
mov eax, 0x4d4bd4
call fcn.004098e0
mov eax, dword [ebp - 0x1c]
call fcn.0040468c
push eax
call dword [0x4e4574]
mov edx, eax
mov eax, 0x4e201c
call fcn.004043c4
jmp 0x4d48a3
mov eax, dword [0x4e247c]
mov eax, dword [eax]
call fcn.00408fa4
test al, al
je 0x4d48a3
mov eax, dword [0x4e247c]
mov eax, dword [eax]
call fcn.0040468c
push eax
lea eax, [ebp - 0x38]
push eax
mov eax, dword [0x4e2020]
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0xb
mov eax, 0x4d4bb8
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x28], 0xb
mov eax, 0x4d4bc8
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
lea edx, [ebp - 0x34]
mov ecx, 2
mov eax, 0x4d4bd4
call fcn.004098e0
mov eax, dword [ebp - 0x38]
call fcn.0040468c
push eax
call dword [0x4e4574]
mov edx, eax
mov eax, 0x4e201c
call fcn.004043c4
lea edx, [ebp - 0x3c]
mov eax, 0x4d4c1c
call fcn.004d2230
mov eax, dword [ebp - 0x3c]
mov edx, 0x4d4ac4
call fcn.004045d8
jne 0x4d4a1f
cmp dword [0x4e2030], 0
jne 0x4d4931
lea eax, [ebp - 0x40]
mov ecx, 0x4d4c2c
mov edx, dword [0x4e4590]
call fcn.004044d8
mov eax, dword [ebp - 0x40]
call fcn.0040468c
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [0x4e2030], eax
push 0x4d4ae0
mov eax, dword [0x4e2030]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4e4578], eax
push 0x4d4aec
mov eax, dword [0x4e2030]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4e457c], eax
push 0x4d4c38
mov eax, dword [0x4e2030]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4e4580], eax
lea edx, [ebp - 0x44]
mov eax, 0x4d4c4c
call fcn.004d2230
mov edx, dword [ebp - 0x44]
mov eax, 0x4e202c
call fcn.00404220
cmp dword [0x4e202c], 0
je 0x4d4a1f
mov eax, dword [0x4e202c]
mov edx, 0x4d4b54
call fcn.004045d8
je 0x4d4a1f
mov eax, dword [0x4e202c]
mov edx, 0x4d4b60
call fcn.004045d8
je 0x4d4a1f
push 0x4d4c58
call dword [0x4e4580]
mov eax, dword [0x4e22f8]
mov eax, dword [eax]
call fcn.00408fa4
test al, al
je 0x4d49d7
push 0x4d4c60
push 1
push 0x3c
push 0x3e8
mov eax, dword [0x4e22f8]
mov eax, dword [eax]
call fcn.0040468c
push eax
mov eax, dword [0x4e202c]
call fcn.0040468c
push eax
call dword [0x4e4578]
mov edx, eax
mov eax, 0x4e2028
call fcn.004043c4
jmp 0x4d4a1f
mov eax, dword [0x4e247c]
mov eax, dword [eax]
call fcn.00408fa4
test al, al
je 0x4d4a1f
push 0x4d4c60
push 1
push 0x3c
push 0x3e8
mov eax, dword [0x4e247c]
mov eax, dword [eax]
call fcn.0040468c
push eax
mov eax, dword [0x4e202c]
call fcn.0040468c
push eax
call dword [0x4e4578]
mov edx, eax
mov eax, 0x4e2028
call fcn.004043c4
mov eax, dword [0x4e2010]
call fcn.0040448c
cmp eax, 0xa
jg 0x4d4a4b
mov eax, dword [0x4e201c]
cmp byte [eax], 0x45
jne 0x4d4a4b
mov edx, 0x4d4c6c
mov eax, dword [0x4e2028]
call fcn.004351e0
test al, al
jne 0x4d4a6c
xor eax, eax
mov dword [0x4e4584], eax
mov eax, dword [0x4e2700]
mov byte [eax], 0
mov eax, dword [0x4e458c]
mov eax, dword [eax + 0x364]
mov dl, 1
call fcn.0043468c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4d4a9b
lea eax, [ebp - 0x44]
mov edx, 4
call fcn.004041f0
lea eax, [ebp - 0x1c]
mov edx, 7
call fcn.004041f0
ret