Function at 0x41caa0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.004048b8
mov ebx, 0x45f90c
xor eax, eax
push ebp
push 0x41cecb
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 0
cmp dword [ebp - 4], 0
jne 0x41cadc
lea eax, [ebp - 4]
mov edx, 0x41cee4
call fcn.00404484
mov eax, dword [0x464934]
call fcn.0041be8c
xor eax, eax
push ebp
push 0x41ceae
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x45f908], 0
jne 0x41ce86
mov byte [0x464938], 0
mov byte [0x464939], 0
mov eax, dword [ebp - 4]
call fcn.004048c8
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [ebx], eax
cmp dword [ebx], 0
je 0x41ce8a
push 0x41cef0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f904], eax
push 0x41cefc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f900], eax
push 0x41cf0c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8e0], eax
push 0x41cf18
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8c0], eax
push 0x41cf24
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f878], eax
push 0x41cf34
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f870], eax
push 0x41cf40
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f874], eax
push 0x41cf4c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8e8], eax
push 0x41cf54
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8e4], eax
push 0x41cf5c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8dc], eax
push 0x41cf64
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8d8], eax
push 0x41cf70
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8d4], eax
push 0x41cf7c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8a0], eax
push 0x41cf88
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8d0], eax
push 0x41cf90
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8cc], eax
push 0x41cf98
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8c8], eax
push 0x41cfa4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8c4], eax
push 0x41cfb0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8bc], eax
push 0x41cfb8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8b8], eax
push 0x41cfc0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8b4], eax
push 0x41cfc8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8ac], eax
push 0x41cfd0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8b0], eax
push 0x41cfdc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8f0], eax
push 0x41cfe4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8a8], eax
push 0x41cfec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8a4], eax
push 0x41cff4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f89c], eax
push 0x41d000
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f898], eax
push 0x41d00c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8ec], eax
push 0x41d014
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f890], eax
push 0x41d024
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f88c], eax
push 0x41d034
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f884], eax
push 0x41d044
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f888], eax
push 0x41d058
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f87c], eax
push 0x41d068
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f880], eax
push 0x41d078
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f894], eax
push 0x41d084
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8f4], eax
push 0x41d090
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8f8], eax
push 0x41d0a0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8fc], eax
cmp dword [0x45f8f4], 0
je 0x41cdef
cmp dword [0x45f8f8], 0
je 0x41cdef
cmp dword [0x45f8fc], 0
jne 0x41cdf3
xor eax, eax
jmp 0x41cdf5
mov al, 1
mov byte [0x464938], al
cmp byte [0x464938], 0
jne 0x41ce80
push 0x41d0ac
call sub.kernel32.dll_LoadLibraryA
mov dword [0x45f910], eax
cmp dword [0x45f910], 0
je 0x41ce80
push 0x41d084
mov eax, dword [0x45f910]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8f4], eax
push 0x41d090
mov eax, dword [0x45f910]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8f8], eax
push 0x41d0a0
mov eax, dword [0x45f910]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45f8fc], eax
cmp dword [0x45f8f4], 0
je 0x41ce75
cmp dword [0x45f8f8], 0
je 0x41ce75
cmp dword [0x45f8fc], 0
jne 0x41ce79
xor eax, eax
jmp 0x41ce7b
mov al, 1
mov byte [0x464939], al
mov byte [ebp - 5], 1
jmp 0x41ce8a
mov byte [ebp - 5], 1
cmp byte [ebp - 5], 0
je 0x41ce96
inc dword [0x45f908]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41ceb5
mov eax, dword [0x464934]
call fcn.0041be94
ret