Function at 0x4ab040
Capabilities:
Link many functions at runtime

Disassembly:
mov edi, edi
push ebx
push esi
push edi
mov esi, ecx
push 0x418554
push dword [esi + 0x1c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
xor ebx, ebx
mov dword [esi + 0x24], eax
inc ebx
mov edi, section..data
test eax, eax
jne 0x4ab096
mov eax, dword [section..data]
cmp eax, edi
je 0x4ab096
test byte [eax + 0x1c], bl
je 0x4ab096
cmp byte [eax + 0x19], 2
jb 0x4ab096
call fcn.004f44e3
push eax
mov eax, dword [section..data]
mov edx, 0x418660
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x2e
pop ecx
call fcn.004238e7
push 0x418568
push dword [esi + 0x1c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x28], eax
test eax, eax
jne 0x4ab0dd
mov eax, dword [section..data]
cmp eax, edi
je 0x4ab0dd
test byte [eax + 0x1c], bl
je 0x4ab0dd
cmp byte [eax + 0x19], 2
jb 0x4ab0dd
call fcn.004f44e3
push eax
mov eax, dword [section..data]
mov edx, 0x418660
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x2f
pop ecx
call fcn.004238e7
push 0x418578
push dword [esi + 0x1c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x2c], eax
test eax, eax
jne 0x4ab124
mov eax, dword [section..data]
cmp eax, edi
je 0x4ab124
test byte [eax + 0x1c], bl
je 0x4ab124
cmp byte [eax + 0x19], 2
jb 0x4ab124
call fcn.004f44e3
push eax
mov eax, dword [section..data]
mov edx, 0x418660
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x30
pop ecx
call fcn.004238e7
push 0x418588
push dword [esi + 0x1c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x30], eax
test eax, eax
jne 0x4ab16b
mov eax, dword [section..data]
cmp eax, edi
je 0x4ab16b
test byte [eax + 0x1c], bl
je 0x4ab16b
cmp byte [eax + 0x19], 2
jb 0x4ab16b
call fcn.004f44e3
push eax
mov eax, dword [section..data]
mov edx, 0x418660
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x31
pop ecx
call fcn.004238e7
push 0x41859c
push dword [esi + 0x1c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x34], eax
test eax, eax
jne 0x4ab1b2
mov eax, dword [section..data]
cmp eax, edi
je 0x4ab1b2
test byte [eax + 0x1c], bl
je 0x4ab1b2
cmp byte [eax + 0x19], 2
jb 0x4ab1b2
call fcn.004f44e3
push eax
mov eax, dword [section..data]
mov edx, 0x418660
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x32
pop ecx
call fcn.004238e7
push 0x4185b4
push dword [esi + 0x1c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x38], eax
test eax, eax
jne 0x4ab1f9
mov eax, dword [section..data]
cmp eax, edi
je 0x4ab1f9
test byte [eax + 0x1c], bl
je 0x4ab1f9
cmp byte [eax + 0x19], 2
jb 0x4ab1f9
call fcn.004f44e3
push eax
mov eax, dword [section..data]
mov edx, 0x418660
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x33
pop ecx
call fcn.004238e7
push 0x4185d8
push dword [esi + 0x1c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [esi + 0x3c], eax
test eax, eax
jne 0x4ab240
mov eax, dword [section..data]
cmp eax, edi
je 0x4ab240
test byte [eax + 0x1c], bl
je 0x4ab240
cmp byte [eax + 0x19], 2
jb 0x4ab240
call fcn.004f44e3
push eax
mov eax, dword [section..data]
mov edx, 0x418660
push dword [eax + 0x14]
push dword [eax + 0x10]
push 0x34
pop ecx
call fcn.004238e7
cmp dword [esi + 0x24], 0
je 0x4ab24c
cmp dword [esi + 0x2c], 0
jne 0x4ab24e
xor ebx, ebx
pop edi
pop esi
mov eax, ebx
pop ebx
ret