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

Disassembly:
push 0xffffffffffffffff
push 0x5f28bb
mov eax, dword fs:[0]
push eax
sub esp, 0x70
push ebx
push ebp
push esi
push edi
mov eax, dword [0x676890]
xor eax, esp
push eax
lea eax, [esp + 0x84]
mov dword fs:[0], eax
mov dword [esp + 0x24], ecx
xor ebx, ebx
mov esi, 0x66278c
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x14], 0x6626f8
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], ebx
lea esp, [esp]
mov ebp, dword [esi]
mov edi, 0x10
cmp dword [esi + 4], edi
jb 0x50d751
mov eax, dword [esi - 0x10]
jmp 0x50d754
lea eax, [esi - 0x10]
push ebx
push 0x6322ea
push eax
call fcn.004067e0
add esp, 0xc
cmp eax, ebx
jne 0x50d776
xor eax, eax
cmp ebp, ebx
setne al
cmp eax, ebx
je 0x50d94e
push 0xffffffffffffffff
push ebx
add esi, 0xffffffec
mov ebp, 0xf
push esi
lea ecx, [esp + 0x34]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x48], ebx
mov byte [esp + 0x38], bl
call fcn.004046b0
push 0x6322ec
lea eax, [esp + 0x98]
push eax
lea ecx, [esp + 0x68]
push ecx
mov byte [esp + 0x98], 1
call fcn.00404290
lea edx, [esp + 0x34]
push edx
push eax
lea eax, [esp + 0x58]
push eax
mov byte [esp + 0xa4], 2
call fcn.004038f0
add esp, 0x18
mov byte [esp + 0x8c], 3
cmp dword [eax + 0x18], edi
jb 0x50d7e3
mov eax, dword [eax + 4]
jmp 0x50d7e6
add eax, 4
mov ecx, dword [0x67d560]
push eax
call fcn.004f2170
mov esi, 0x10
mov edi, eax
cmp dword [esp + 0x5c], esi
jb 0x50d80c
mov ecx, dword [esp + 0x48]
push ecx
call fcn.0059fc2a
add esp, 4
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x58], ebx
mov byte [esp + 0x48], bl
cmp dword [esp + 0x78], esi
jb 0x50d82b
mov edx, dword [esp + 0x64]
push edx
call fcn.0059fc2a
add esp, 4
mov dword [esp + 0x78], ebp
mov dword [esp + 0x74], ebx
mov byte [esp + 0x64], bl
mov byte [esp + 0x8c], bl
cmp dword [esp + 0x40], esi
jb 0x50d851
mov eax, dword [esp + 0x2c]
push eax
call fcn.0059fc2a
add esp, 4
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x2c], bl
call fcn.00508850
push eax
mov ecx, edi
call fcn.004fd6f0
push 0x2c
call fcn.005a01ed
mov esi, eax
add esp, 4
mov dword [esp + 0x20], esi
mov byte [esp + 0x8c], 4
cmp esi, ebx
je 0x50d89a
mov ecx, esi
call fcn.004f9190
fldz
fst dword [esi + 0x20]
mov dword [esi + 0x28], ebx
fstp dword [esi + 0x24]
jmp 0x50d89c
xor esi, esi
push edi
mov ecx, esi
mov byte [esp + 0x90], bl
mov dword [esp + 0x24], esi
call fcn.004f8960
mov eax, dword [esp + 0x18]
fld dword [eax + 0x6626b8]
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
fstp dword [esi + 0x20]
fld dword [eax + 0x6626d8]
add edi, 4
fstp dword [esi + 0x24]
mov dword [esi + 0x28], ecx
mov eax, dword [edi + 0xc]
cmp eax, ebx
jne 0x50d8de
xor ecx, ecx
jmp 0x50d8e6
mov ecx, dword [edi + 0x14]
sub ecx, eax
sar ecx, 2
mov ebp, dword [edi + 0x10]
mov edx, ebp
sub edx, eax
sar edx, 2
cmp edx, ecx
jae 0x50d915
add dword [esp + 0x1c], 0x1c
add dword [esp + 0x18], 4
mov dword [ebp], esi
mov esi, dword [esp + 0x1c]
add ebp, 4
add dword [esp + 0x14], 0x10
mov dword [edi + 0x10], ebp
jmp 0x50d740
cmp eax, ebp
jbe 0x50d91e
call fcn.005a01dd
mov eax, dword [edi]
lea ecx, [esp + 0x20]
push ecx
push ebp
push eax
lea edx, [esp + 0x88]
push edx
mov ecx, edi
call fcn.004e75e0
add dword [esp + 0x1c], 0x1c
add dword [esp + 0x18], 4
add dword [esp + 0x14], 0x10
mov esi, dword [esp + 0x1c]
jmp 0x50d740
cmp dword [esp + 0xac], edi
jb 0x50d967
mov eax, dword [esp + 0x98]
push eax
call fcn.0059fc2a
add esp, 4
mov ecx, dword [esp + 0x84]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret 0x1c