Function at 0x4a20d0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
push 0
push ebx
push esi
push edi
mov ebx, 0x57e588
xor eax, eax
push ebp
push 0x4a2882
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [ebx], 0
jne 0x4a212b
lea edx, [ebp - 0xc]
mov eax, dword [0x581ca8]
mov eax, dword [eax]
call fcn.0043b928
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 8]
call fcn.00409508
lea eax, [ebp - 8]
mov edx, 0x4a289c
call fcn.00403e90
mov eax, dword [ebp - 8]
call fcn.0040404c
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [ebx], eax
cmp dword [ebx], 0
jne 0x4a213c
push 0x4a28ac
call sub.kernel32.dll_LoadLibraryA
mov dword [ebx], eax
cmp dword [0x57e584], 0
jne 0x4a217f
lea edx, [ebp - 0xc]
mov eax, dword [0x581ca8]
mov eax, dword [eax]
call fcn.0043b928
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 8]
call fcn.00409508
lea eax, [ebp - 8]
mov edx, 0x4a28c4
call fcn.00403e90
mov eax, dword [ebp - 8]
call fcn.0040404c
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [0x57e584], eax
cmp dword [0x57e584], 0
jne 0x4a2197
push 0x4a28d4
call sub.kernel32.dll_LoadLibraryA
mov dword [0x57e584], eax
mov eax, 0x4a28ec
call fcn.004a1ff0
mov dword [0x57e470], eax
mov eax, 0x4a290c
call fcn.004a1ff0
mov dword [0x57e474], eax
mov eax, 0x4a2920
call fcn.004a1ff0
mov dword [0x57e478], eax
mov eax, 0x4a2938
call fcn.004a1ff0
mov dword [0x57e47c], eax
mov eax, 0x4a294c
call fcn.004a1ff0
mov dword [0x57e480], eax
mov eax, 0x4a2970
call fcn.004a1ff0
mov dword [0x57e484], eax
mov eax, 0x4a2998
call fcn.004a1ff0
mov dword [0x57e488], eax
mov eax, 0x4a29c4
call fcn.004a1ff0
mov dword [0x57e48c], eax
mov eax, 0x4a29e4
call fcn.004a1ff0
mov dword [0x57e490], eax
mov eax, 0x4a2a04
call fcn.004a1ff0
mov dword [0x57e494], eax
mov eax, 0x4a2a28
call fcn.004a1ff0
mov dword [0x57e498], eax
mov eax, 0x4a2a44
call fcn.004a1ff0
mov dword [0x57e4a0], eax
mov eax, 0x4a2a68
call fcn.004a1ff0
mov dword [0x57e4a4], eax
mov eax, 0x4a2a8c
call fcn.004a1ff0
mov dword [0x57e4a8], eax
mov eax, 0x4a2ab4
call fcn.004a1ff0
mov dword [0x57e4ac], eax
mov eax, 0x4a2ae4
call fcn.004a1ff0
mov dword [0x57e4b0], eax
mov eax, 0x4a2b08
call fcn.004a1ff0
mov dword [0x57e4b4], eax
mov eax, 0x4a2b18
call fcn.004a1ff0
mov dword [0x57e4b8], eax
mov eax, 0x4a2b2c
call fcn.004a1ff0
mov dword [0x57e4bc], eax
mov eax, 0x4a2b40
call fcn.004a1ff0
mov dword [0x57e4c0], eax
mov eax, 0x4a2b54
call fcn.004a1ff0
mov dword [0x57e4c4], eax
mov eax, 0x4a2b68
call fcn.004a1ff0
mov dword [0x57e4c8], eax
mov eax, 0x4a2b7c
call fcn.004a1ff0
mov dword [0x57e4cc], eax
mov eax, 0x4a2b90
call fcn.004a1ff0
mov dword [0x57e4d0], eax
mov eax, 0x4a2ba8
call fcn.004a1ff0
mov dword [0x57e4d4], eax
mov eax, 0x4a2bc0
call fcn.004a1ff0
mov dword [0x57e4d8], eax
mov eax, 0x4a2bdc
call fcn.004a1ff0
mov dword [0x57e4dc], eax
mov eax, 0x4a2bf8
call fcn.004a1ff0
mov dword [0x57e4e0], eax
mov eax, 0x4a2c10
call fcn.004a1ff0
mov dword [0x57e4e4], eax
mov eax, 0x4a2c2c
call fcn.004a1ff0
mov dword [0x57e4e8], eax
mov eax, 0x4a2c48
call fcn.004a1ff0
mov dword [0x57e4ec], eax
mov eax, 0x4a2c60
call fcn.004a1ff0
mov dword [0x57e4f0], eax
mov eax, 0x4a2c80
call fcn.004a1ff0
mov dword [0x57e4f4], eax
mov eax, 0x4a2ca0
call fcn.004a1ff0
mov dword [0x57e4f8], eax
mov eax, 0x4a2cb8
call fcn.004a1ff0
mov dword [0x57e4fc], eax
mov eax, 0x4a2cd4
call fcn.004a1ff0
mov dword [0x57e500], eax
mov eax, 0x4a2cf0
call fcn.004a1ff0
mov dword [0x57e504], eax
mov eax, 0x4a2d08
call fcn.004a1ff0
mov dword [0x57e508], eax
mov eax, 0x4a2d24
call fcn.004a1ff0
mov dword [0x57e50c], eax
mov eax, 0x4a2d44
call fcn.004a1ff0
mov dword [0x57e510], eax
mov eax, 0x4a2d64
call fcn.004a1ff0
mov dword [0x57e514], eax
mov eax, 0x4a2d80
call fcn.004a1ff0
mov dword [0x57e518], eax
mov eax, 0x4a2da8
call fcn.004a1ff0
mov dword [0x57e51c], eax
mov eax, 0x4a2dc0
call fcn.004a1ff0
mov dword [0x57e520], eax
mov eax, 0x4a2ddc
call fcn.004a2060
mov dword [0x57e524], eax
mov eax, 0x4a2df0
call fcn.004a2060
mov dword [0x57e528], eax
mov eax, 0x4a2e0c
call fcn.004a2060
mov dword [0x57e52c], eax
mov eax, 0x4a2e24
call fcn.004a2060
mov dword [0x57e530], eax
mov eax, 0x4a2e44
call fcn.004a2060
mov dword [0x57e534], eax
mov eax, 0x4a2e64
call fcn.004a2060
mov dword [0x57e538], eax
mov eax, 0x4a2e84
call fcn.004a2060
mov dword [0x57e53c], eax
mov eax, 0x4a2ea4
call fcn.004a2060
mov dword [0x57e540], eax
mov eax, 0x4a2eb8
call fcn.004a2060
mov dword [0x57e544], eax
mov eax, 0x4a2ec8
call fcn.004a2060
mov dword [0x57e548], eax
mov eax, 0x4a2eec
call fcn.004a2060
mov dword [0x57e54c], eax
mov eax, 0x4a2f10
call fcn.004a2060
mov dword [0x57e550], eax
mov eax, 0x4a2f38
call fcn.004a2060
mov dword [0x57e554], eax
mov eax, 0x4a2f60
call fcn.004a2060
mov dword [0x57e590], eax
mov eax, 0x4a2f74
call fcn.004a1ff0
mov dword [0x57e49c], eax
mov eax, 0x4a2f94
call fcn.004a1ff0
mov dword [0x57e558], eax
mov eax, 0x4a2fac
call fcn.004a1ff0
mov dword [0x57e55c], eax
mov eax, 0x4a2fc4
call fcn.004a1ff0
mov dword [0x57e560], eax
mov eax, 0x4a2fe4
call fcn.004a1ff0
mov dword [0x57e564], eax
mov eax, 0x4a3008
call fcn.004a1ff0
mov dword [0x57e568], eax
mov eax, 0x4a3034
call fcn.004a1ff0
mov dword [0x57e56c], eax
mov eax, 0x4a305c
call fcn.004a1ff0
mov dword [0x57e570], eax
mov eax, 0x4a307c
call fcn.004a1ff0
mov dword [0x57e574], eax
mov eax, 0x4a309c
call fcn.004a1ff0
mov dword [0x57e578], eax
mov eax, 0x4a30b8
call fcn.004a1ff0
mov dword [0x57e57c], eax
mov eax, 0x4a30d8
call fcn.004a1ff0
mov dword [0x57e580], eax
mov eax, 0x4a30f4
call fcn.004a1ff0
mov dword [0x57e43c], eax
push 0x4a3100
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e440], eax
push 0x4a3110
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e444], eax
push 0x4a311c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e448], eax
push 0x4a3124
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e44c], eax
push 0x4a3130
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e450], eax
push 0x4a313c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e454], eax
push 0x4a3150
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e458], eax
push 0x4a3160
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e45c], eax
push 0x4a316c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e460], eax
push 0x4a317c
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e464], eax
push 0x4a3190
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e468], eax
push 0x4a31a0
mov eax, dword [ebx]
push eax
call sub.kernel32.dll_GetProcAddress
mov dword [0x57e46c], eax
cmp dword [0x57e474], 0
je 0x4a2794
cmp dword [0x57e504], 0
je 0x4a2794
cmp dword [0x57e4b8], 0
je 0x4a2794
cmp dword [0x57e4b4], 0
je 0x4a2794
cmp dword [0x57e478], 0
je 0x4a2794
cmp dword [0x57e4c4], 0
je 0x4a2794
cmp dword [0x57e4cc], 0
je 0x4a2794
cmp dword [0x57e4d0], 0
je 0x4a2794
cmp dword [0x57e440], 0
je 0x4a2794
cmp dword [0x57e43c], 0
je 0x4a2794
cmp dword [0x57e444], 0
je 0x4a2794
cmp dword [0x57e47c], 0
je 0x4a2794
cmp dword [0x57e508], 0
je 0x4a2794
cmp dword [0x57e494], 0
je 0x4a2794
cmp dword [0x57e580], 0
je 0x4a2794
cmp dword [0x57e578], 0
je 0x4a2794
cmp dword [0x57e540], 0
je 0x4a2794
cmp dword [0x57e534], 0
je 0x4a2794
cmp dword [0x57e528], 0
je 0x4a2794
cmp dword [0x57e53c], 0
je 0x4a2794
cmp dword [0x57e528], 0
je 0x4a2794
cmp dword [0x57e524], 0
je 0x4a2794
cmp dword [0x57e49c], 0
je 0x4a2794
mov eax, 0x4a3208
test eax, eax
jne 0x4a2798
xor eax, eax
jmp 0x4a279a
mov al, 1
mov byte [ebp - 1], al
cmp byte [ebp - 1], 0
je 0x4a27d9
cmp dword [0x57e44c], 0
je 0x4a27d9
cmp dword [0x57e448], 0
je 0x4a27d9
cmp dword [0x57e450], 0
je 0x4a27d9
cmp dword [0x57e454], 0
je 0x4a27d9
cmp dword [0x57e45c], 0
je 0x4a27d9
cmp dword [0x57e458], 0
jne 0x4a27dd
xor eax, eax
jmp 0x4a27df
mov al, 1
mov byte [ebp - 1], al
mov al, byte [ebp - 1]
mov byte [0x57e438], al
cmp byte [0x57e438], 0
je 0x4a2850
call dword [0x57e520]
call dword [0x57e48c]
xor eax, eax
push ebp
push 0x4a2826
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x57e590], 0
je 0x4a281c
call dword [0x57e590]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4a2830
cmp dword [0x57e460], 0
je 0x4a2867
push 0
call dword [0x57e460]
pop ecx
mov edx, eax
mov eax, 0x585aa4
call fcn.00403dc0
jmp 0x4a2867
call fcn.004a31b0
mov eax, 0x585aa4
mov edx, dword [0x581dd8]
mov edx, dword [edx]
call fcn.00403c60
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4a2889
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00403c30
ret