Function at 0x5cd960
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov esi, eax
mov ebx, dword [ebp + 8]
xor eax, eax
push ebp
push 0x5cdca6
push dword fs:[eax]
mov dword fs:[eax], esp
push ebx
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 4]
mov eax, esi
call fcn.005d0350
cmp byte [esi + 0x18], 0
jne 0x5cdc90
lea eax, [esi + 0x20]
mov edx, dword [esi + 0xc]
call fcn.004048fc
mov dl, 1
mov eax, dword [0x42377c]
call fcn.00424fb8
mov dword [esi + 0x50], eax
lea eax, [esi + 0x64]
mov edx, dword [esi + 4]
mov edx, dword [edx + 0x7c]
call fcn.004048fc
cmp byte [esi + 0x3c], 0
jne 0x5cd9d6
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x6c]
mov dword [esi + 0x68], eax
xor eax, eax
mov dword [esi + 0x6c], eax
mov eax, esi
call fcn.005caa20
cmp byte [eax + 0x20], 0
jne 0x5cd9f1
mov dword [esi + 0x6c], 1
jmp 0x5cda22
mov edi, dword [esi + 0x68]
test edi, edi
jle 0x5cda22
mov dword [ebp - 0xc], 1
mov eax, dword [0x621df0]
mov eax, dword [eax]
call fcn.0046ee94
mov edx, dword [ebp - 0xc]
mov eax, esi
call fcn.005d0084
test al, al
je 0x5cda1c
inc dword [esi + 0x6c]
inc dword [ebp - 0xc]
dec edi
jne 0x5cd9ff
fild dword [ebp - 8]
add esp, 0xfffffff4
fstp xword [esp]
wait
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x58]
fstp xword [esi + 0x58]
wait
fild dword [ebp - 4]
add esp, 0xfffffff4
fstp xword [esp]
wait
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x54]
fstp xword [esi + 0x78]
wait
mov dl, 1
mov eax, dword [0x4172f8]
call fcn.00403a2c
mov dword [esi + 0xb0], eax
mov dl, 1
mov eax, dword [0x4172f8]
call fcn.00403a2c
mov dword [esi + 0xb4], eax
mov dl, 1
mov eax, dword [0x4172f8]
call fcn.00403a2c
mov dword [esi + 0xb8], eax
mov dl, 1
mov eax, dword [0x4172f8]
call fcn.00403a2c
mov dword [esi + 0xbc], eax
mov dl, 1
mov eax, dword [0x4172f8]
call fcn.00403a2c
mov dword [esi + 0xc0], eax
mov byte [esi + 0x4c], 1
mov byte [esi + 0x4e], 0
mov byte [esi + 0x4d], 1
mov edi, dword [esi + 0x50]
mov eax, ebx
call fcn.004254b4
mov edx, eax
mov eax, edi
call fcn.004254bc
lea edx, [ebp - 0x10]
mov eax, ebx
call fcn.0042539c
mov edx, dword [ebp - 0x10]
mov eax, edi
call fcn.004253b4
mov eax, ebx
call fcn.00425484
mov edx, eax
mov eax, edi
call fcn.0042548c
mov eax, ebx
call fcn.00425410
cdq
xor eax, edx
sub eax, edx
mov edx, eax
mov eax, edi
call fcn.0042542c
mov edx, dword [ebx + 0x18]
mov eax, edi
call fcn.0042518c
mov eax, ebx
call fcn.0042544c
mov edx, eax
mov eax, edi
call fcn.00425458
mov ebx, dword [esi + 0x10]
test ebx, ebx
je 0x5cdc89
mov eax, ebx
mov edx, dword [0x5ab6f8]
call fcn.00403be8
test al, al
je 0x5cdc89
mov eax, ebx
mov edx, dword [0x5ab6f8]
call fcn.00403c0c
mov ebx, eax
mov dl, 1
mov eax, dword [0x5a9f88]
call fcn.005ad838
mov edi, eax
mov dword [esi + 0x70], edi
mov eax, ebx
call fcn.005ae710
mov edx, dword [eax + 0xc]
mov eax, edi
call fcn.005ada00
mov eax, ebx
call fcn.005ae710
mov edx, dword [eax + 4]
mov eax, dword [esi + 0x70]
call fcn.005ad9f0
mov eax, ebx
call fcn.005ae710
mov cl, byte [eax + 8]
mov edx, 1
mov eax, dword [esi + 0x70]
call fcn.005ada14
mov eax, ebx
call fcn.005ae710
mov cl, byte [eax + 9]
mov edx, 2
mov eax, dword [esi + 0x70]
call fcn.005ada14
mov eax, ebx
call fcn.005ae710
mov cl, byte [eax + 0x11]
mov edx, 3
mov eax, dword [esi + 0x70]
call fcn.005ada14
mov eax, ebx
call fcn.005ae710
mov cl, byte [eax + 0x12]
xor edx, edx
mov eax, dword [esi + 0x70]
call fcn.005ada14
mov eax, ebx
call fcn.005ae710
mov dl, byte [eax + 0x10]
mov eax, dword [esi + 0x70]
call fcn.005ada04
mov eax, ebx
call fcn.005ae710
mov edx, dword [eax + 0x14]
mov eax, dword [esi + 0x70]
call fcn.005ada44
mov eax, dword [ebx + 0x2bc]
mov edx, 4
call fcn.005ae058
add esp, 0xfffffff4
fstp xword [esp]
wait
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x54]
fstp xword [esi + 0x88]
wait
mov eax, dword [ebx + 0x2bc]
mov edx, 2
call fcn.005ae058
add esp, 0xfffffff4
fstp xword [esp]
wait
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x58]
fstp xword [esi + 0x92]
wait
mov eax, dword [ebx + 0x2bc]
mov edx, 5
call fcn.005ae058
add esp, 0xfffffff4
fstp xword [esp]
wait
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x54]
fstp xword [esi + 0x9c]
wait
mov eax, dword [ebx + 0x2bc]
xor edx, edx
call fcn.005ae058
add esp, 0xfffffff4
fstp xword [esp]
wait
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x58]
fstp xword [esi + 0xa6]
wait
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x70]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5cdcad
lea eax, [ebp - 0x10]
call fcn.004048a8
ret