Function at 0x41b190
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, 0x453504
xor eax, eax
push ebp
push 0x41b5bb
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 0
cmp dword [ebp - 4], 0
jne 0x41b1cc
lea eax, [ebp - 4]
mov edx, 0x41b5d4
call fcn.00404454
mov eax, dword [0x4588f0]
call fcn.0041a57c
xor eax, eax
push ebp
push 0x41b59e
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x453500], 0
jne 0x41b576
mov byte [0x4588f4], 0
mov byte [0x4588f5], 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 0x41b57a
push 0x41b5e0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534fc], eax
push 0x41b5ec
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534f8], eax
push 0x41b5fc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534d8], eax
push 0x41b608
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534b8], eax
push 0x41b614
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453470], eax
push 0x41b624
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453468], eax
push 0x41b630
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45346c], eax
push 0x41b63c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534e0], eax
push 0x41b644
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534dc], eax
push 0x41b64c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534d4], eax
push 0x41b654
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534d0], eax
push 0x41b660
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534cc], eax
push 0x41b66c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453498], eax
push 0x41b678
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534c8], eax
push 0x41b680
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534c4], eax
push 0x41b688
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534c0], eax
push 0x41b694
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534bc], eax
push 0x41b6a0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534b4], eax
push 0x41b6a8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534b0], eax
push 0x41b6b0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534ac], eax
push 0x41b6b8
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534a4], eax
push 0x41b6c0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534a8], eax
push 0x41b6cc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534e8], eax
push 0x41b6d4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534a0], eax
push 0x41b6dc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45349c], eax
push 0x41b6e4
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453494], eax
push 0x41b6f0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453490], eax
push 0x41b6fc
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534e4], eax
push 0x41b704
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453488], eax
push 0x41b714
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453484], eax
push 0x41b724
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45347c], eax
push 0x41b734
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453480], eax
push 0x41b748
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453474], eax
push 0x41b758
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x453478], eax
push 0x41b768
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x45348c], eax
push 0x41b774
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534ec], eax
push 0x41b780
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534f0], eax
push 0x41b790
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534f4], eax
cmp dword [0x4534ec], 0
je 0x41b4df
cmp dword [0x4534f0], 0
je 0x41b4df
cmp dword [0x4534f4], 0
jne 0x41b4e3
xor eax, eax
jmp 0x41b4e5
mov al, 1
mov byte [0x4588f4], al
cmp byte [0x4588f4], 0
jne 0x41b570
push 0x41b79c
call sub.kernel32.dll_LoadLibraryA
mov dword [0x453508], eax
cmp dword [0x453508], 0
je 0x41b570
push 0x41b774
mov eax, dword [0x453508]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534ec], eax
push 0x41b780
mov eax, dword [0x453508]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534f0], eax
push 0x41b790
mov eax, dword [0x453508]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x4534f4], eax
cmp dword [0x4534ec], 0
je 0x41b565
cmp dword [0x4534f0], 0
je 0x41b565
cmp dword [0x4534f4], 0
jne 0x41b569
xor eax, eax
jmp 0x41b56b
mov al, 1
mov byte [0x4588f5], al
mov byte [ebp - 5], 1
jmp 0x41b57a
mov byte [ebp - 5], 1
cmp byte [ebp - 5], 0
je 0x41b586
inc dword [0x453500]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41b5a5
mov eax, dword [0x4588f0]
call fcn.0041a584
ret