56364a:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
563651:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
563658:	eb 14                	jmp    0x56366e
56365a:	8b 4d ac             	mov    -0x54(%ebp),%ecx
56365d:	83 09 40             	orl    $0x40,(%ecx)
563660:	83 0a 10             	orl    $0x10,(%edx)
563663:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
563667:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
56366e:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
563674:	85 c0                	test   %eax,%eax
563676:	74 07                	je     0x56367f
563678:	8b 45 e4             	mov    -0x1c(%ebp),%eax
56367b:	f7 d8                	neg    %eax
56367d:	eb 03                	jmp    0x563682
56367f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
563682:	8b 55 c8             	mov    -0x38(%ebp),%edx
563685:	89 02                	mov    %eax,(%edx)
563687:	81 0e 00 40 00 00    	orl    $0x4000,(%esi)
56368d:	ff 4d b4             	decl   -0x4c(%ebp)
563690:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
563693:	85 c9                	test   %ecx,%ecx
563695:	0f 8e 8c 05 00 00    	jle    0x563c27
56369b:	8b c7                	mov    %edi,%eax
56369d:	8b 55 c4             	mov    -0x3c(%ebp),%edx
5636a0:	c1 e0 02             	shl    $0x2,%eax
5636a3:	c1 e2 02             	shl    $0x2,%edx
5636a6:	03 f0                	add    %eax,%esi
5636a8:	01 55 c8             	add    %edx,-0x38(%ebp)
5636ab:	8b 0e                	mov    (%esi),%ecx
5636ad:	89 4d a8             	mov    %ecx,-0x58(%ebp)
5636b0:	8b 45 a8             	mov    -0x58(%ebp),%eax
5636b3:	25 ff 00 00 00       	and    $0xff,%eax
5636b8:	85 c0                	test   %eax,%eax
5636ba:	0f 84 ab 01 00 00    	je     0x56386b
5636c0:	f6 45 a9 50          	testb  $0x50,-0x57(%ebp)
5636c4:	0f 85 a1 01 00 00    	jne    0x56386b
5636ca:	8b 55 14             	mov    0x14(%ebp),%edx
5636cd:	8b 4d a8             	mov    -0x58(%ebp),%ecx
5636d0:	c1 e2 08             	shl    $0x8,%edx
5636d3:	81 e1 ff 00 00 00    	and    $0xff,%ecx
5636d9:	0b d1                	or     %ecx,%edx
5636db:	8b 04 95 10 b4 6a 00 	mov    0x6ab410(,%edx,4),%eax
5636e2:	8b 53 10             	mov    0x10(%ebx),%edx
5636e5:	c1 e0 02             	shl    $0x2,%eax
5636e8:	03 c2                	add    %edx,%eax
5636ea:	89 43 0c             	mov    %eax,0xc(%ebx)
5636ed:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5636f0:	8b 01                	mov    (%ecx),%eax
5636f2:	0f b7 10             	movzwl (%eax),%edx
5636f5:	29 53 04             	sub    %edx,0x4(%ebx)
5636f8:	8b 43 0c             	mov    0xc(%ebx),%eax
5636fb:	8b 0b                	mov    (%ebx),%ecx
5636fd:	c1 e9 10             	shr    $0x10,%ecx
563700:	8b 10                	mov    (%eax),%edx
563702:	0f b7 02             	movzwl (%edx),%eax
563705:	3b c8                	cmp    %eax,%ecx
563707:	72 27                	jb     0x563730
563709:	8b 53 0c             	mov    0xc(%ebx),%edx
56370c:	8b 0a                	mov    (%edx),%ecx
56370e:	0f b7 01             	movzwl (%ecx),%eax
563711:	c1 e0 10             	shl    $0x10,%eax
563714:	29 03                	sub    %eax,(%ebx)
563716:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
56371a:	74 0b                	je     0x563727
56371c:	8b 53 0c             	mov    0xc(%ebx),%edx
56371f:	8b 0a                	mov    (%edx),%ecx
563721:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
563725:	eb 10                	jmp    0x563737
563727:	8b c3                	mov    %ebx,%eax
563729:	e8 82 e5 00 00       	call   0x571cb0
56372e:	eb 07                	jmp    0x563737
563730:	8b c3                	mov    %ebx,%eax
563732:	e8 99 e6 00 00       	call   0x571dd0
563737:	85 c0                	test   %eax,%eax
563739:	0f 84 26 01 00 00    	je     0x563865
56373f:	8b 55 a8             	mov    -0x58(%ebp),%edx
563742:	8b 43 10             	mov    0x10(%ebx),%eax
563745:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
56374b:	c1 fa 04             	sar    $0x4,%edx
56374e:	8b 0c 95 18 c8 6a 00 	mov    0x6ac818(,%edx,4),%ecx
563755:	c1 e1 02             	shl    $0x2,%ecx
563758:	03 c8                	add    %eax,%ecx
56375a:	89 4b 0c             	mov    %ecx,0xc(%ebx)
56375d:	8b 53 0c             	mov    0xc(%ebx),%edx
563760:	8b 0a                	mov    (%edx),%ecx
563762:	0f b7 01             	movzwl (%ecx),%eax
563765:	29 43 04             	sub    %eax,0x4(%ebx)
563768:	8b 4b 0c             	mov    0xc(%ebx),%ecx
56376b:	8b 13                	mov    (%ebx),%edx
56376d:	c1 ea 10             	shr    $0x10,%edx
563770:	8b 01                	mov    (%ecx),%eax
563772:	0f b7 08             	movzwl (%eax),%ecx
563775:	3b d1                	cmp    %ecx,%edx
563777:	72 27                	jb     0x5637a0
563779:	8b 53 0c             	mov    0xc(%ebx),%edx
56377c:	8b 02                	mov    (%edx),%eax
56377e:	0f b7 10             	movzwl (%eax),%edx
563781:	c1 e2 10             	shl    $0x10,%edx
563784:	29 13                	sub    %edx,(%ebx)
563786:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
56378a:	74 0b                	je     0x563797
56378c:	8b 4b 0c             	mov    0xc(%ebx),%ecx
56378f:	8b 01                	mov    (%ecx),%eax
563791:	0f b7 40 02          	movzwl 0x2(%eax),%eax
563795:	eb 10                	jmp    0x5637a7
563797:	8b c3                	mov    %ebx,%eax
563799:	e8 12 e5 00 00       	call   0x571cb0
56379e:	eb 07                	jmp    0x5637a7
5637a0:	8b c3                	mov    %ebx,%eax
5637a2:	e8 29 e6 00 00       	call   0x571dd0
5637a7:	8b 55 a8             	mov    -0x58(%ebp),%edx
5637aa:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
5637b0:	c1 fa 04             	sar    $0x4,%edx
5637b3:	33 04 95 14 c4 6a 00 	xor    0x6ac414(,%edx,4),%eax
5637ba:	8b cf                	mov    %edi,%ecx
5637bc:	c1 e1 02             	shl    $0x2,%ecx
5637bf:	8b d6                	mov    %esi,%edx
5637c1:	2b d1                	sub    %ecx,%edx
5637c3:	89 55 a4             	mov    %edx,-0x5c(%ebp)
5637c6:	8b d7                	mov    %edi,%edx
5637c8:	c1 e2 02             	shl    $0x2,%edx
5637cb:	03 d6                	add    %esi,%edx
5637cd:	eb 30                	jmp    0x5637ff
5637cf:	83 4a fc 01          	orl    $0x1,-0x4(%edx)
5637d3:	83 4a 04 08          	orl    $0x8,0x4(%edx)
5637d7:	85 c0                	test   %eax,%eax
5637d9:	74 14                	je     0x5637ef
5637db:	81 0a 10 01 00 00    	orl    $0x110,(%edx)
5637e1:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
5637e8:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
5637ef:	83 0a 10             	orl    $0x10,(%edx)
5637f2:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
5637f6:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
5637fd:	eb 4d                	jmp    0x56384c
5637ff:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
563802:	83 49 fc 02          	orl    $0x2,-0x4(%ecx)
563806:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
563809:	83 49 04 04          	orl    $0x4,0x4(%ecx)
56380d:	83 4a fc 01          	orl    $0x1,-0x4(%edx)
563811:	83 4a 04 08          	orl    $0x8,0x4(%edx)
563815:	85 c0                	test   %eax,%eax
563817:	74 1f                	je     0x563838
563819:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
56381c:	81 09 40 04 00 00    	orl    $0x440,(%ecx)
563822:	81 0a 10 01 00 00    	orl    $0x110,(%edx)
563828:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
56382f:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
563836:	eb 14                	jmp    0x56384c
563838:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
56383b:	83 09 40             	orl    $0x40,(%ecx)
56383e:	83 0a 10             	orl    $0x10,(%edx)
563841:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
563845:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
56384c:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
563852:	85 c0                	test   %eax,%eax
563854:	74 07                	je     0x56385d
563856:	8b 45 e4             	mov    -0x1c(%ebp),%eax
563859:	f7 d8                	neg    %eax
56385b:	eb 03                	jmp    0x563860
56385d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
563860:	8b 55 c8             	mov    -0x38(%ebp),%edx
563863:	89 02                	mov    %eax,(%edx)
563865:	81 0e 00 40 00 00    	orl    $0x4000,(%esi)
56386b:	ff 4d b4             	decl   -0x4c(%ebp)
56386e:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
563871:	85 c9                	test   %ecx,%ecx
563873:	0f 8e ae 03 00 00    	jle    0x563c27
563879:	8b c7                	mov    %edi,%eax
56387b:	8b 55 c4             	mov    -0x3c(%ebp),%edx
56387e:	c1 e0 02             	shl    $0x2,%eax
563881:	c1 e2 02             	shl    $0x2,%edx
563884:	03 f0                	add    %eax,%esi
563886:	01 55 c8             	add    %edx,-0x38(%ebp)
563889:	8b 0e                	mov    (%esi),%ecx
56388b:	89 4d a0             	mov    %ecx,-0x60(%ebp)
56388e:	8b 45 a0             	mov    -0x60(%ebp),%eax
563891:	25 ff 00 00 00       	and    $0xff,%eax
563896:	85 c0                	test   %eax,%eax
563898:	0f 84 ab 01 00 00    	je     0x563a49
56389e:	f6 45 a1 50          	testb  $0x50,-0x5f(%ebp)
5638a2:	0f 85 a1 01 00 00    	jne    0x563a49
5638a8:	8b 55 14             	mov    0x14(%ebp),%edx
5638ab:	8b 4d a0             	mov    -0x60(%ebp),%ecx
5638ae:	c1 e2 08             	shl    $0x8,%edx
5638b1:	81 e1 ff 00 00 00    	and    $0xff,%ecx
5638b7:	0b d1                	or     %ecx,%edx
5638b9:	8b 04 95 10 b4 6a 00 	mov    0x6ab410(,%edx,4),%eax
5638c0:	8b 53 10             	mov    0x10(%ebx),%edx
5638c3:	c1 e0 02             	shl    $0x2,%eax
5638c6:	03 c2                	add    %edx,%eax
5638c8:	89 43 0c             	mov    %eax,0xc(%ebx)
5638cb:	8b 4b 0c             	mov    0xc(%ebx),%ecx
5638ce:	8b 01                	mov    (%ecx),%eax
5638d0:	0f b7 10             	movzwl (%eax),%edx
5638d3:	29 53 04             	sub    %edx,0x4(%ebx)
5638d6:	8b 43 0c             	mov    0xc(%ebx),%eax
5638d9:	8b 0b                	mov    (%ebx),%ecx
5638db:	c1 e9 10             	shr    $0x10,%ecx
5638de:	8b 10                	mov    (%eax),%edx
5638e0:	0f b7 02             	movzwl (%edx),%eax
5638e3:	3b c8                	cmp    %eax,%ecx
5638e5:	72 27                	jb     0x56390e
5638e7:	8b 53 0c             	mov    0xc(%ebx),%edx
5638ea:	8b 0a                	mov    (%edx),%ecx
5638ec:	0f b7 01             	movzwl (%ecx),%eax
5638ef:	c1 e0 10             	shl    $0x10,%eax
5638f2:	29 03                	sub    %eax,(%ebx)
5638f4:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
5638f8:	74 0b                	je     0x563905
5638fa:	8b 53 0c             	mov    0xc(%ebx),%edx
5638fd:	8b 0a                	mov    (%edx),%ecx
5638ff:	0f b7 41 02          	movzwl 0x2(%ecx),%eax
563903:	eb 10                	jmp    0x563915
563905:	8b c3                	mov    %ebx,%eax
563907:	e8 a4 e3 00 00       	call   0x571cb0
56390c:	eb 07                	jmp    0x563915
56390e:	8b c3                	mov    %ebx,%eax
563910:	e8 bb e4 00 00       	call   0x571dd0
563915:	85 c0                	test   %eax,%eax
563917:	0f 84 26 01 00 00    	je     0x563a43
56391d:	8b 55 a0             	mov    -0x60(%ebp),%edx
563920:	8b 43 10             	mov    0x10(%ebx),%eax
563923:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
563929:	c1 fa 04             	sar    $0x4,%edx
56392c:	8b 0c 95 18 c8 6a 00 	mov    0x6ac818(,%edx,4),%ecx
563933:	c1 e1 02             	shl    $0x2,%ecx
563936:	03 c8                	add    %eax,%ecx
563938:	89 4b 0c             	mov    %ecx,0xc(%ebx)
56393b:	8b 53 0c             	mov    0xc(%ebx),%edx
56393e:	8b 0a                	mov    (%edx),%ecx
563940:	0f b7 01             	movzwl (%ecx),%eax
563943:	29 43 04             	sub    %eax,0x4(%ebx)
563946:	8b 4b 0c             	mov    0xc(%ebx),%ecx
563949:	8b 13                	mov    (%ebx),%edx
56394b:	c1 ea 10             	shr    $0x10,%edx
56394e:	8b 01                	mov    (%ecx),%eax
563950:	0f b7 08             	movzwl (%eax),%ecx
563953:	3b d1                	cmp    %ecx,%edx
563955:	72 27                	jb     0x56397e
563957:	8b 53 0c             	mov    0xc(%ebx),%edx
56395a:	8b 02                	mov    (%edx),%eax
56395c:	0f b7 10             	movzwl (%eax),%edx
56395f:	c1 e2 10             	shl    $0x10,%edx
563962:	29 13                	sub    %edx,(%ebx)
563964:	f6 43 05 80          	testb  $0x80,0x5(%ebx)
563968:	74 0b                	je     0x563975
56396a:	8b 4b 0c             	mov    0xc(%ebx),%ecx
56396d:	8b 01                	mov    (%ecx),%eax
56396f:	0f b7 40 02          	movzwl 0x2(%eax),%eax
563973:	eb 10                	jmp    0x563985
563975:	8b c3                	mov    %ebx,%eax
563977:	e8 34 e3 00 00       	call   0x571cb0
56397c:	eb 07                	jmp    0x563985
56397e:	8b c3                	mov    %ebx,%eax
563980:	e8 4b e4 00 00       	call   0x571dd0
563985:	8b 55 a0             	mov    -0x60(%ebp),%edx
563988:	81 e2 f0 0f 00 00    	and    $0xff0,%edx
56398e:	c1 fa 04             	sar    $0x4,%edx
563991:	33 04 95 14 c4 6a 00 	xor    0x6ac414(,%edx,4),%eax
563998:	8b cf                	mov    %edi,%ecx
56399a:	c1 e1 02             	shl    $0x2,%ecx
56399d:	8b d6                	mov    %esi,%edx
56399f:	2b d1                	sub    %ecx,%edx
5639a1:	89 55 9c             	mov    %edx,-0x64(%ebp)
5639a4:	8b d7                	mov    %edi,%edx
5639a6:	c1 e2 02             	shl    $0x2,%edx
5639a9:	03 d6                	add    %esi,%edx
5639ab:	eb 30                	jmp    0x5639dd
5639ad:	83 4a fc 01          	orl    $0x1,-0x4(%edx)
5639b1:	83 4a 04 08          	orl    $0x8,0x4(%edx)
5639b5:	85 c0                	test   %eax,%eax
5639b7:	74 14                	je     0x5639cd
5639b9:	81 0a 10 01 00 00    	orl    $0x110,(%edx)
5639bf:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
5639c6:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
5639cd:	83 0a 10             	orl    $0x10,(%edx)
5639d0:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
5639d4:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
5639db:	eb 4d                	jmp    0x563a2a
5639dd:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
5639e0:	83 49 fc 02          	orl    $0x2,-0x4(%ecx)
5639e4:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
5639e7:	83 49 04 04          	orl    $0x4,0x4(%ecx)
5639eb:	83 4a fc 01          	orl    $0x1,-0x4(%edx)
5639ef:	83 4a 04 08          	orl    $0x8,0x4(%edx)
5639f3:	85 c0                	test   %eax,%eax
5639f5:	74 1f                	je     0x563a16
5639f7:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
5639fa:	81 09 40 04 00 00    	orl    $0x440,(%ecx)
563a00:	81 0a 10 01 00 00    	orl    $0x110,(%edx)
563a06:	81 4e fc 20 02 00 00 	orl    $0x220,-0x4(%esi)
563a0d:	81 4e 04 80 08 00 00 	orl    $0x880,0x4(%esi)
563a14:	eb 14                	jmp    0x563a2a
563a16:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
563a19:	83 09 40             	orl    $0x40,(%ecx)
563a1c:	83 0a 10             	orl    $0x10,(%edx)
563a1f:	83 4e fc 20          	orl    $0x20,-0x4(%esi)
563a23:	81 4e 04 80 00 00 00 	orl    $0x80,0x4(%esi)
563a2a:	81 0e 00 10 00 00    	orl    $0x1000,(%esi)
563a30:	85 c0                	test   %eax,%eax
563a32:	74 07                	je     0x563a3b
563a34:	8b 45 e4             	mov    -0x1c(%ebp),%eax
563a37:	f7 d8                	neg    %eax
563a39:	eb 03                	jmp    0x563a3e
563a3b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
563a3e:	8b 55 c8             	mov    -0x38(%ebp),%edx
563a41:	89 02                	mov    %eax,(%edx)
563a43:	81 0e 00 40 00 00    	orl    $0x4000,(%esi)
563a49:	ff 4d b4             	decl   -0x4c(%ebp)
563a4c:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
563a4f:	85 c9                	test   %ecx,%ecx
563a51:	0f 8e d0 01 00 00    	jle    0x563c27
563a57:	8b c7                	mov    %edi,%eax
563a59:	8b 55 c4             	mov    -0x3c(%ebp),%edx
563a5c:	c1 e0 02             	shl    $0x2,%eax
563a5f:	c1 e2 02             	shl    $0x2,%edx
563a62:	03 f0                	add    %eax,%esi
563a64:	01 55 c8             	add    %edx,-0x38(%ebp)
563a67:	8b 0e                	mov    (%esi),%ecx
563a69:	89 4d 98             	mov    %ecx,-0x68(%ebp)
563a6c:	8b 45 98             	mov    -0x68(%ebp),%eax
563a6f:	25 ff 00 00 00       	and    $0xff,%eax
563a74:	85 c0                	test   %eax,%eax
563a76:	0f 84 ab 01 00 00    	je     0x563c27
563a7c:	f6 45 99 50          	testb  $0x50,-0x67(%ebp)
563a80:	0f 85 a1 01 00 00    	jne    0x563c27
563a86:	8b 55 14             	mov    0x14(%ebp),%edx
563a89:	8b 4d 98             	mov    -0x68(%ebp),%ecx
563a8c:	c1 e2 08             	shl    $0x8,%edx
563a8f:	81 e1 ff 00 00 00    	and    $0xff,%ecx
563a95:	0b d1                	or     %ecx,%edx
563a97:	8b 04 95 10 b4 6a 00 	mov    0x6ab410(,%edx,4),%eax
563a9e:	8b 53 10             	mov    0x10(%ebx),%edx
563aa1:	c1 e0 02             	shl    $0x2,%eax
563aa4:	03 c2                	add    %edx,%eax
563aa6:	89 43 0c             	mov    %eax,0xc(%ebx)
563aa9:	8b 4b 0c             	mov    0xc(%ebx),%ecx
563aac:	8b 01                	mov    (%ecx),%eax
563aae:	0f b7 10             	movzwl (%eax),%edx
563ab1:	29 53 04             	sub    %edx,0x4(%ebx)
563ab4:	8b 43 0c             	mov    0xc(%ebx),%eax
563ab7:	8b 0b                	mov    (%ebx),%ecx
563ab9:	c1 e9 10             	shr    $0x10,%ecx
563abc:	8b 10                	mov    (%eax),%edx
563abe:	0f b7 02             	movzwl (%edx),%eax
563ac1:	3b c8                	cmp    %eax,%ecx
563ac3:	72 27                	jb     0x563aec
563ac5:	8b 53 0c             	mov    0xc(%ebx),%edx
563ac8:	8b 0a                	mov    (%edx),%ecx
563aca:	0f b7 01             	movzwl (%ecx),%eax