Function at 0x5339ec
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd0
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x14]
call fcn.00405714
lea esi, [ebp - 0x18]
xor eax, eax
push ebp
push 0x533e06
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x59f2b0], 0
jne 0x533ad7
push 0x533e14
call sub.kernel32.dll_LoadLibraryA
mov dword [0x59f2b0], eax
cmp dword [0x59f2b0], 0
jne 0x533a59
mov eax, dword [ebp - 0x10]
mov byte [eax + 0x168], 1
jmp 0x533dd6
push 0x533e20
mov eax, dword [0x59f2b0]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x59f2b4], eax
push 0x533e30
mov eax, dword [0x59f2b0]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x59f2b8], eax
push 0x533e44
mov eax, dword [0x59f2b0]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x59f2bc], eax
push 0x533e58
mov eax, dword [0x59f2b0]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x59f2c0], eax
push 0x533e6c
mov eax, dword [0x59f2b0]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x59f2c4], eax
push 0x533e80
mov eax, dword [0x59f2b0]
push eax
call sub.kernel32.dll_GetProcAddress_1
mov dword [0x59f2c8], eax
mov eax, dword [ebp - 0x10]
cmp byte [eax + 0x38], 0
jne 0x533b27
mov eax, dword [ebp - 0x10]
cmp byte [eax + 0x144], 0
je 0x533b27
mov eax, dword [ebp - 0x10]
call fcn.00529760
test al, al
jne 0x533b27
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x128]
push eax
mov eax, dword [ebp - 0x10]
push eax
push fcn.005339ec
mov eax, dword [ebp - 0x14]
push eax
push 0
push 0
mov ecx, dword [ebp - 0x10]
mov dl, 1
mov eax, dword [0x528f84]
call fcn.005336a8
jmp 0x533dd6
mov eax, dword [ebp - 0x10]
mov byte [eax + 0x168], 0
lea eax, [ebp - 0x2c]
push eax
mov ecx, 7
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.00405784
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x28]
call fcn.0040b120
mov eax, dword [ebp - 0x28]
mov edx, 0x533e9c
call fcn.00405670
je 0x533b6d
push ebp
call fcn.005339cc
pop ecx
jmp 0x533dd6
lea eax, [ebp - 0x14]
mov ecx, 7
mov edx, 1
call fcn.004057c4
mov edx, dword [ebp - 0x14]
mov eax, 0x533eac
call fcn.00405868
mov ebx, eax
cmp ebx, 1
jge 0x533ba0
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x38]
jmp 0x533dd6
lea eax, [ebp - 0x1c]
push eax
mov ecx, ebx
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.00405784
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x14]
call fcn.00405524
mov ecx, eax
mov edx, ebx
mov eax, dword [ebp - 0x14]
call fcn.00405784
mov edx, dword [ebp - 0x1c]
mov eax, 0x533eb8
call fcn.00405868
mov ebx, eax
test ebx, ebx
jle 0x533c1d
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x1c]
call fcn.00405524
mov ecx, eax
lea edx, [ebx + 1]
mov eax, dword [ebp - 0x1c]
call fcn.00405784
mov eax, dword [ebp - 0x30]
mov edx, 0x50
call fcn.0040b5e0
mov edi, eax
lea eax, [ebp - 0x1c]
push eax
mov ecx, ebx
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x1c]
call fcn.00405784
jmp 0x533c22
mov edi, 0x50
xor eax, eax
mov dword [ebp - 4], eax
xor eax, eax
mov dword [ebp - 8], eax
xor eax, eax
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x10]
cmp dword [eax + 0x154], 0
jne 0x533c76
push 0
push 0
push 0
push 1
push 0x533ebc
call dword [0x59f2b4]
mov dword [ebp - 0xc], eax
push 0
push 0
push 3
push 0
push 0
push edi
mov eax, dword [ebp - 0x1c]
call fcn.00405724
push eax
mov eax, dword [ebp - 0xc]
push eax
call dword [0x59f2bc]
mov dword [ebp - 8], eax
jmp 0x533cd4
push 0
push 0
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x154]
call fcn.00405724
push eax
push 3
push 0x533ebc
call dword [0x59f2b4]
mov dword [ebp - 0xc], eax
push 0
push 0
push 3
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x15c]
call fcn.00405724
push eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x158]
call fcn.00405724
push eax
push edi
mov eax, dword [ebp - 0x1c]
call fcn.00405724
push eax
mov eax, dword [ebp - 0xc]
push eax
call dword [0x59f2bc]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jne 0x533cee
push ebp
call fcn.00533984
pop ecx
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x38]
jmp 0x533dd6
push 1
push 0x84400000
push 0
push 0
push 0x533ec8
mov eax, dword [ebp - 0x20]
call fcn.00405724
push eax
push 0x533ed4
mov eax, dword [ebp - 8]
push eax
call dword [0x59f2c0]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x533d33
push ebp
call fcn.00533984
pop ecx
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
call dword [edx + 0x38]
jmp 0x533dd6
mov dl, 1
mov eax, dword [0x41a8a8]
call fcn.004043c4
mov dword [ebp - 0x24], eax
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 4]
push eax
call dword [0x59f2c4]
mov eax, 0x10000
call fcn.00402e50
mov ebx, eax
push esi
push 0x10000
push ebx
mov eax, dword [ebp - 4]
push eax
call dword [0x59f2c8]
mov edx, ebx
mov ecx, dword [esi]
mov eax, dword [ebp - 0x24]
mov edi, dword [eax]
call dword [edi + 0x10]
cmp dword [esi], 0
jne 0x533d60
mov eax, ebx
call fcn.00402e80
push ebp
call fcn.00533984
pop ecx
push 0
push 0
mov eax, dword [ebp - 0x24]
call fcn.0041f334
xor eax, eax
push ebp
push 0x533dcf
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
mov si, 0xffe7
call fcn.004045fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x533dd6
mov eax, dword [ebp - 0x24]
call fcn.004043f4
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x533e0d
lea eax, [ebp - 0x30]
mov edx, 3
call fcn.00405288
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.00405288
lea eax, [ebp - 0x14]
call fcn.00405264
ret