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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
fld dword [ecx + 0x58]
mov edi, dword [esp + 0x68]
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
fldz
fcompi st(1)
fstp st(0)
jae 0x530ded
cmp byte [ecx + 0x3b], 0xd
mov ebx, ecx
je 0x530ded
cmp byte [ecx + 9], 8
je 0x530ded
movsx esi, di
mov ecx, 0x5b5300
mov dword [esp], esi
call fcn.0050f960
sub esp, 4
test eax, eax
jne 0x530ded
cmp byte [ebx + 0x42], 8
je 0x530e00
movzx eax, word [esp + 0x60]
mov byte [ebx + 0x42], 8
mov word [ebx + 0x43], di
mov word [ebx + 0x45], ax
movzx eax, word [esp + 0x64]
mov word [ebx + 0x47], ax
mov eax, dword [ebx]
mov ecx, ebx
mov dword [esp], 0
call dword [eax + 0x78]
sub esp, 4
test esi, esi
jle 0x530eb9
cmp esi, dword [0x5b5310]
jg 0x530eb9
sub esi, 1
imul esi, dword [0x5b5314]
mov eax, dword [0x5b531d]
mov eax, dword [eax + esi]
movzx esi, word [eax + 0x1a]
movzx eax, word [eax + 0x1c]
sar ax, 5
sar si, 5
movsx edx, ax
mov eax, dword [esp + 0x6c]
movsx esi, si
mov dword [esp + 0x24], edx
test eax, eax
jne 0x530d68
movsx ecx, word [ebx + 0x45]
mov eax, esi
movsx ebp, word [ebx + 0x47]
sub eax, ecx
add eax, 1
cmp eax, 2
ja 0x530db3
mov eax, edx
sub eax, ebp
add eax, 1
cmp eax, 2
ja 0x530db3
movzx eax, word [ebx + 0x1c]
movzx edx, word [ebx + 0x1a]
mov dword [esp + 0x2c], ebx
mov ebx, ebp
sar ax, 5
sar dx, 5
cwde
imul eax, dword [0x59ad30]
movsx edx, dx
add eax, edx
imul eax, eax, 0xe
add eax, dword [0x5b39d0]
movzx eax, byte [eax + 0xc]
mov byte [esp + 0x2b], al
mov eax, 2
mov ebp, eax
lea eax, [esp + 0x38]
mov dword [esp + 8], 3
mov ecx, 0x5ba360
mov dword [esp + 0x10], eax
lea eax, [esp + 0x34]
mov dword [esp + 0xc], eax
mov dword [esp + 4], 3
mov dword [esp], ebp
call fcn.0049a650
mov ecx, esi
sub esp, 0x14
mov edx, dword [esp + 0x38]
add ecx, dword [esp + 0x34]
js 0x530ea8
mov eax, dword [esp + 0x24]
lea ebx, [edx + eax]
mov edx, dword [0x59ad30]
cmp edx, ecx
jle 0x530ea8
test ebx, ebx
js 0x530ea8
cmp dword [0x59ad2c], ebx
jle 0x530ea8
imul edx, ebx
movzx eax, byte [esp + 0x2b]
add edx, ecx
imul edx, edx, 0xe
add edx, dword [0x5b39d0]
cmp byte [edx + 0xc], al
jne 0x530ea8
mov ebp, ebx
mov ebx, dword [esp + 0x2c]
jmp 0x530db3
lea eax, [esp + 0x38]
mov ecx, 0x5ba360
mov dword [esp + 0x10], eax
lea eax, [esp + 0x34]
mov dword [esp + 0xc], eax
movsx eax, word [0x59ad2c]
mov dword [esp + 8], eax
movsx eax, word [0x59ad30]
mov dword [esp + 4], eax
movsx eax, word [esp + 0x6c]
mov dword [esp], eax
call fcn.0049a650
sub esp, 0x14
mov ecx, dword [esp + 0x60]
mov ebp, dword [esp + 0x64]
add ecx, dword [esp + 0x34]
add ebp, dword [esp + 0x38]
movzx eax, word [ebx + 0x1a]
movzx edx, word [ebx + 0x1c]
sar ax, 5
sar dx, 5
cwde
movsx edx, dx
cmp dword [esp + 0x60], eax
jne 0x530e38
cmp dword [esp + 0x64], edx
jne 0x530e38
movzx eax, word [esp + 0x60]
mov byte [ebx + 0x3b], 8
mov word [ebx + 0x3c], di
mov word [ebx + 0x3e], ax
movzx eax, word [esp + 0x64]
mov word [ebx + 0x40], ax
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
cmp word [ebx + 0x43], di
jne 0x530bfd
movsx eax, word [ebx + 0x45]
cmp eax, dword [esp + 0x60]
jne 0x530bfd
movsx eax, word [ebx + 0x47]
cmp eax, dword [esp + 0x64]
jne 0x530bfd
cmp byte [ebx + 9], 1
jne 0x530ded
jmp 0x530c17
sub esi, eax
mov eax, esi
neg eax
cmovs eax, esi
cmp eax, 1
jg 0x530e5c
mov eax, dword [esp + 0x24]
sub eax, edx
mov edx, eax
neg edx
cmovns eax, edx
cmp eax, 1
jle 0x530dd3
mov dword [esp], ecx
mov ecx, ebx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 1
mov dword [esp + 8], 1
mov dword [esp + 4], ebp
call fcn.0052d7d0
sub esp, 0x20
jmp 0x530dd3
add ebp, 1
cmp ebp, 0xa
jne 0x530cd7
jmp 0x530d5c
movzx eax, word [0x1a]
ud2