Function at 0x4e2a70
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
push 0
push ebx
push esi
mov ebx, eax
xor eax, eax
push ebp
push 0x4e2ebe
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x4c8]
call fcn.00434234
mov eax, dword [ebp - 8]
lea edx, [ebp - 4]
call fcn.00408fb8
mov eax, dword [ebp - 4]
mov edx, 0x4e2ed4
call fcn.00404084
je 0x4e2e98
mov eax, dword [0x5d2f10]
cmp dword [eax], 0x20
jae 0x4e2ad0
mov eax, 0x4e2ee8
call fcn.0045934c
jmp 0x4e2e98
push 0x4e2f04
mov eax, dword [0x5d2f10]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_GetProcAddress
mov esi, eax
mov eax, dword [0x5d3170]
mov dword [eax], esi
mov eax, dword [0x5d3170]
test esi, esi
je 0x4e2afd
mov eax, dword [0x5d3170]
mov eax, dword [eax]
call eax
push 0x4e2f14
mov eax, dword [0x5d2f10]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_GetProcAddress
mov esi, eax
mov eax, dword [0x5d2c7c]
mov dword [eax], esi
mov eax, dword [0x5d2c7c]
test esi, esi
je 0x4e2c4b
mov eax, ebx
call fcn.004dfbb8
mov eax, ebx
call fcn.004e0090
push 1
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x4bc]
call fcn.00434234
mov eax, dword [ebp - 8]
lea edx, [ebp - 4]
call fcn.00408fb8
mov edx, dword [ebp - 4]
lea eax, [ebp - 0xc]
call fcn.004044bc
mov eax, dword [ebp - 0xc]
push eax
push 0x4e2f28
mov eax, dword [0x5d2c7c]
mov eax, dword [eax]
call eax
push 1
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x4c8]
call fcn.00434234
mov eax, dword [ebp - 8]
lea edx, [ebp - 4]
call fcn.00408fb8
mov edx, dword [ebp - 4]
lea eax, [ebp - 0xc]
call fcn.004044bc
mov eax, dword [ebp - 0xc]
push eax
push 0x4e2f48
mov eax, dword [0x5d2c7c]
mov eax, dword [eax]
call eax
push 1
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x4cc]
call fcn.00434234
mov eax, dword [ebp - 8]
lea edx, [ebp - 4]
call fcn.00408fb8
mov edx, dword [ebp - 4]
lea eax, [ebp - 0xc]
call fcn.004044bc
mov eax, dword [ebp - 0xc]
push eax
push 0x4e2f68
mov eax, dword [0x5d2c7c]
mov eax, dword [eax]
call eax
push 1
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x4c0]
call fcn.00434234
mov eax, dword [ebp - 8]
lea edx, [ebp - 4]
call fcn.00408fb8
mov edx, dword [ebp - 4]
lea eax, [ebp - 0xc]
call fcn.004044bc
mov eax, dword [ebp - 0xc]
push eax
push 0x4e2f8c
mov eax, dword [0x5d2c7c]
mov eax, dword [eax]
call eax
push 1
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x4c4]
call fcn.00434234
mov eax, dword [ebp - 8]
lea edx, [ebp - 4]
call fcn.00408fb8
mov edx, dword [ebp - 4]
lea eax, [ebp - 0xc]
call fcn.004044bc
mov eax, dword [ebp - 0xc]
push eax
push 0x4e2fc4
mov eax, dword [0x5d2c7c]
mov eax, dword [eax]
call eax
push 0x4e2fdc
mov eax, dword [0x5d2f10]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_GetProcAddress
mov esi, eax
mov eax, dword [0x5d2e90]
mov dword [eax], esi
mov eax, dword [0x5d2e90]
test esi, esi
je 0x4e2c7d
mov eax, ebx
call fcn.004df96c
mov eax, ebx
call fcn.004dfa94
mov eax, dword [ebx + 0x42c]
mov edx, dword [eax]
call dword [edx + 0xd0]
mov eax, dword [ebx + 0x434]
mov edx, dword [eax]
call dword [edx + 0xd0]
push 0x4e2ff0
mov eax, dword [0x5d2f10]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_GetProcAddress
mov esi, eax
mov eax, dword [0x5d2bfc]
mov dword [eax], esi
mov eax, dword [0x5d2bfc]
test esi, esi
je 0x4e2e98
mov eax, dword [ebx + 0x498]
mov edx, dword [eax]
call dword [edx + 0xb8]
cmp al, 1
jne 0x4e2cdf
mov dword [ebx + 0x5bc], 1
jmp 0x4e2ce7
xor eax, eax
mov dword [ebx + 0x5bc], eax
mov eax, dword [ebx + 0x5bc]
push eax
push 0x16
mov eax, dword [0x5d2bfc]
mov eax, dword [eax]
call eax
cmp al, 1
jne 0x4e2e6e
push 0x4e2ff8
mov eax, dword [0x5d2f10]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_GetProcAddress
mov esi, eax
mov eax, dword [0x5d3034]
mov dword [eax], esi
mov eax, dword [0x5d3034]
test esi, esi
je 0x4e2e98
push 1
lea eax, [ebp - 0xc]
push eax
mov eax, dword [0x5d3034]
mov eax, dword [eax]
call eax
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 4]
call fcn.00403f3c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x42c]
call fcn.00434264
mov eax, dword [ebx + 0x5b4]
mov edx, dword [eax]
call dword [edx + 0xb8]
cmp al, 1
jne 0x4e2d85
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x42c]
call fcn.00434234
mov ecx, dword [ebp - 8]
mov eax, dword [0x5d298c]
mov eax, dword [eax]
mov edx, 0x4e3010
call fcn.005c8cdc
push 2
lea eax, [ebp - 0xc]
push eax
mov eax, dword [0x5d3034]
mov eax, dword [eax]
call eax
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 4]
call fcn.00403f3c
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x434]
call fcn.00434264
mov eax, dword [ebx + 0x5b4]
mov edx, dword [eax]
call dword [edx + 0xb8]
cmp al, 1
jne 0x4e2de1
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x434]
call fcn.00434234
mov ecx, dword [ebp - 8]
mov eax, dword [0x5d298c]
mov eax, dword [eax]
mov edx, 0x4e302c
call fcn.005c8cdc
mov esi, dword [ebx + 0x36c]
mov eax, dword [esi + 0x1ec]
mov edx, 0x4e3048
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov edx, eax
mov eax, esi
call fcn.0042c140
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x42c]
call fcn.00434234
mov edx, dword [ebp - 8]
mov eax, dword [ebx + 0x440]
call fcn.00434264
mov eax, dword [ebx + 0x5b4]
mov edx, dword [eax]
call dword [edx + 0xb8]
cmp al, 1
jne 0x4e2e50
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x440]
call fcn.00434234
mov ecx, dword [ebp - 8]
mov eax, dword [0x5d298c]
mov eax, dword [eax]
mov edx, 0x4e3058
call fcn.005c8cdc
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x42c]
call fcn.00434234
mov edx, dword [ebp - 8]
mov eax, dword [ebx + 0x4e0]
call fcn.00434264
jmp 0x4e2e98
mov edx, 0x4e3068
mov eax, dword [ebx + 0x4f4]
call fcn.00434264
xor edx, edx
mov eax, dword [ebx + 0x440]
call fcn.00434264
xor edx, edx
mov eax, dword [ebx + 0x4e0]
call fcn.00434264
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4e2ec5
lea eax, [ebp - 0xc]
call fcn.004043b4
lea eax, [ebp - 8]
call fcn.00403cf8
lea eax, [ebp - 4]
call fcn.00403cf8
ret