Function at 0x41b11c
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.00404888
mov ebx, 0x452504
xor eax, eax
push ebp
push 0x41b547
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 0
cmp dword [ebp - 4], 0
jne 0x41b158
lea eax, [ebp - 4]
mov edx, 0x41b560
call fcn.00404454
mov eax, dword [0x4578f0]
call fcn.0041a508
xor eax, eax
push ebp
push 0x41b52a
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x452500], 0
jne 0x41b502
mov byte [0x4578f4], 0
mov byte [0x4578f5], 0
mov eax, dword [ebp - 4]
call fcn.00404898
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [ebx], eax
cmp dword [ebx], 0
je 0x41b506
push 0x41b56c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524fc], eax
push 0x41b578
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524f8], eax
push 0x41b588
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524d8], eax
push 0x41b594
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524b8], eax
push 0x41b5a0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452470], eax
push 0x41b5b0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452468], eax
push 0x41b5bc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45246c], eax
push 0x41b5c8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524e0], eax
push 0x41b5d0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524dc], eax
push 0x41b5d8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524d4], eax
push 0x41b5e0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524d0], eax
push 0x41b5ec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524cc], eax
push 0x41b5f8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452498], eax
push 0x41b604
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524c8], eax
push 0x41b60c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524c4], eax
push 0x41b614
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524c0], eax
push 0x41b620
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524bc], eax
push 0x41b62c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524b4], eax
push 0x41b634
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524b0], eax
push 0x41b63c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524ac], eax
push 0x41b644
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524a4], eax
push 0x41b64c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524a8], eax
push 0x41b658
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524e8], eax
push 0x41b660
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524a0], eax
push 0x41b668
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45249c], eax
push 0x41b670
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452494], eax
push 0x41b67c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452490], eax
push 0x41b688
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524e4], eax
push 0x41b690
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452488], eax
push 0x41b6a0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452484], eax
push 0x41b6b0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45247c], eax
push 0x41b6c0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452480], eax
push 0x41b6d4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452474], eax
push 0x41b6e4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x452478], eax
push 0x41b6f4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45248c], eax
push 0x41b700
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524ec], eax
push 0x41b70c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524f0], eax
push 0x41b71c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524f4], eax
cmp dword [0x4524ec], 0
je 0x41b46b
cmp dword [0x4524f0], 0
je 0x41b46b
cmp dword [0x4524f4], 0
jne 0x41b46f
xor eax, eax
jmp 0x41b471
mov al, 1
mov byte [0x4578f4], al
cmp byte [0x4578f4], 0
jne 0x41b4fc
push 0x41b728
call sub.kernel32.dll_LoadLibraryA
mov dword [0x452508], eax
cmp dword [0x452508], 0
je 0x41b4fc
push 0x41b700
mov eax, dword [0x452508]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524ec], eax
push 0x41b70c
mov eax, dword [0x452508]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524f0], eax
push 0x41b71c
mov eax, dword [0x452508]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4524f4], eax
cmp dword [0x4524ec], 0
je 0x41b4f1
cmp dword [0x4524f0], 0
je 0x41b4f1
cmp dword [0x4524f4], 0
jne 0x41b4f5
xor eax, eax
jmp 0x41b4f7
mov al, 1
mov byte [0x4578f5], al
mov byte [ebp - 5], 1
jmp 0x41b506
mov byte [ebp - 5], 1
cmp byte [ebp - 5], 0
je 0x41b512
inc dword [0x452500]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41b531
mov eax, dword [0x4578f0]
call fcn.0041a510
ret