4e86b0:	8b 00                	mov    (%eax),%eax
4e86b2:	8b 40 20             	mov    0x20(%eax),%eax
4e86b5:	8b 40 6c             	mov    0x6c(%eax),%eax
4e86b8:	99                   	cltd
4e86b9:	8b f8                	mov    %eax,%edi
4e86bb:	89 55 ec             	mov    %edx,-0x14(%ebp)
4e86be:	8b da                	mov    %edx,%ebx
4e86c0:	8b 55 f4             	mov    -0xc(%ebp),%edx
4e86c3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4e86c6:	85 d2                	test   %edx,%edx
4e86c8:	7f 61                	jg     0x4e872b
4e86ca:	7c 04                	jl     0x4e86d0
4e86cc:	85 c9                	test   %ecx,%ecx
4e86ce:	73 51                	jae    0x4e8721
4e86d0:	8b 45 e8             	mov    -0x18(%ebp),%eax
4e86d3:	99                   	cltd
4e86d4:	03 c8                	add    %eax,%ecx
4e86d6:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4e86d9:	11 55 f4             	adc    %edx,-0xc(%ebp)
4e86dc:	8b 55 f4             	mov    -0xc(%ebp),%edx
4e86df:	85 d2                	test   %edx,%edx
4e86e1:	7f 69                	jg     0x4e874c
4e86e3:	7c 04                	jl     0x4e86e9
4e86e5:	85 c9                	test   %ecx,%ecx
4e86e7:	73 63                	jae    0x4e874c
4e86e9:	03 f9                	add    %ecx,%edi
4e86eb:	13 da                	adc    %edx,%ebx
4e86ed:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4e86f0:	85 db                	test   %ebx,%ebx
4e86f2:	7f 17                	jg     0x4e870b
4e86f4:	7c 04                	jl     0x4e86fa
4e86f6:	85 ff                	test   %edi,%edi
4e86f8:	73 11                	jae    0x4e870b
4e86fa:	0f 57 c0             	xorps  %xmm0,%xmm0
4e86fd:	66 0f 13 45 f0       	movlpd %xmm0,-0x10(%ebp)
4e8702:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4e8705:	8b 7d f0             	mov    -0x10(%ebp),%edi
4e8708:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4e870b:	0f 57 c0             	xorps  %xmm0,%xmm0
4e870e:	66 0f 13 45 f8       	movlpd %xmm0,-0x8(%ebp)
4e8713:	8b 55 fc             	mov    -0x4(%ebp),%edx
4e8716:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4e8719:	89 55 f4             	mov    %edx,-0xc(%ebp)
4e871c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4e871f:	eb 2b                	jmp    0x4e874c
4e8721:	85 d2                	test   %edx,%edx
4e8723:	7c 14                	jl     0x4e8739
4e8725:	7f 04                	jg     0x4e872b
4e8727:	85 c9                	test   %ecx,%ecx
4e8729:	74 0e                	je     0x4e8739
4e872b:	83 c1 ff             	add    $0xffffffff,%ecx
4e872e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4e8731:	83 d2 ff             	adc    $0xffffffff,%edx
4e8734:	89 55 f4             	mov    %edx,-0xc(%ebp)
4e8737:	eb 13                	jmp    0x4e874c
4e8739:	85 db                	test   %ebx,%ebx
4e873b:	7c 0f                	jl     0x4e874c
4e873d:	7f 04                	jg     0x4e8743
4e873f:	85 ff                	test   %edi,%edi
4e8741:	74 09                	je     0x4e874c
4e8743:	83 c7 ff             	add    $0xffffffff,%edi
4e8746:	83 d3 ff             	adc    $0xffffffff,%ebx
4e8749:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4e874c:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
4e8750:	74 2f                	je     0x4e8781
4e8752:	2b cf                	sub    %edi,%ecx
4e8754:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4e8757:	1b d3                	sbb    %ebx,%edx
4e8759:	89 55 f4             	mov    %edx,-0xc(%ebp)
4e875c:	85 d2                	test   %edx,%edx
4e875e:	7f 21                	jg     0x4e8781
4e8760:	7c 04                	jl     0x4e8766
4e8762:	85 c9                	test   %ecx,%ecx
4e8764:	73 1b                	jae    0x4e8781
4e8766:	03 f9                	add    %ecx,%edi
4e8768:	0f 57 c0             	xorps  %xmm0,%xmm0
4e876b:	66 0f 13 45 f8       	movlpd %xmm0,-0x8(%ebp)
4e8770:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4e8773:	13 da                	adc    %edx,%ebx
4e8775:	8b 55 fc             	mov    -0x4(%ebp),%edx
4e8778:	89 5d ec             	mov    %ebx,-0x14(%ebp)
4e877b:	89 55 f4             	mov    %edx,-0xc(%ebp)
4e877e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4e8781:	83 7d dc 04          	cmpl   $0x4,-0x24(%ebp)
4e8785:	0f 84 9a 00 00 00    	je     0x4e8825
4e878b:	8a 06                	mov    (%esi),%al
4e878d:	84 c0                	test   %al,%al
4e878f:	74 2f                	je     0x4e87c0
4e8791:	8a d8                	mov    %al,%bl
4e8793:	8b c1                	mov    %ecx,%eax
4e8795:	0b c2                	or     %edx,%eax
4e8797:	74 24                	je     0x4e87bd
4e8799:	46                   	inc    %esi
4e879a:	80 fb c0             	cmp    $0xc0,%bl
4e879d:	72 12                	jb     0x4e87b1
4e879f:	8a 06                	mov    (%esi),%al
4e87a1:	24 c0                	and    $0xc0,%al
4e87a3:	3c 80                	cmp    $0x80,%al
4e87a5:	75 0a                	jne    0x4e87b1
4e87a7:	8a 46 01             	mov    0x1(%esi),%al
4e87aa:	46                   	inc    %esi
4e87ab:	24 c0                	and    $0xc0,%al
4e87ad:	3c 80                	cmp    $0x80,%al
4e87af:	74 f6                	je     0x4e87a7
4e87b1:	8a 1e                	mov    (%esi),%bl
4e87b3:	83 c1 ff             	add    $0xffffffff,%ecx
4e87b6:	83 d2 ff             	adc    $0xffffffff,%edx
4e87b9:	84 db                	test   %bl,%bl
4e87bb:	75 d6                	jne    0x4e8793
4e87bd:	8b 5d ec             	mov    -0x14(%ebp),%ebx
4e87c0:	80 3e 00             	cmpb   $0x0,(%esi)
4e87c3:	8b ce                	mov    %esi,%ecx
4e87c5:	74 2e                	je     0x4e87f5
4e87c7:	8b c7                	mov    %edi,%eax
4e87c9:	0b c3                	or     %ebx,%eax
4e87cb:	74 28                	je     0x4e87f5
4e87cd:	8a 01                	mov    (%ecx),%al
4e87cf:	41                   	inc    %ecx
4e87d0:	3c c0                	cmp    $0xc0,%al
4e87d2:	72 16                	jb     0x4e87ea
4e87d4:	8a 01                	mov    (%ecx),%al
4e87d6:	24 c0                	and    $0xc0,%al
4e87d8:	3c 80                	cmp    $0x80,%al
4e87da:	75 0e                	jne    0x4e87ea
4e87dc:	0f 1f 40 00          	nopl   0x0(%eax)
4e87e0:	8a 41 01             	mov    0x1(%ecx),%al
4e87e3:	41                   	inc    %ecx
4e87e4:	24 c0                	and    $0xc0,%al
4e87e6:	3c 80                	cmp    $0x80,%al
4e87e8:	74 f6                	je     0x4e87e0
4e87ea:	83 c7 ff             	add    $0xffffffff,%edi
4e87ed:	83 d3 ff             	adc    $0xffffffff,%ebx
4e87f0:	80 39 00             	cmpb   $0x0,(%ecx)
4e87f3:	75 d2                	jne    0x4e87c7
4e87f5:	2b ce                	sub    %esi,%ecx
4e87f7:	8b c1                	mov    %ecx,%eax
4e87f9:	99                   	cltd
4e87fa:	85 d2                	test   %edx,%edx
4e87fc:	0f 85 92 00 00 00    	jne    0x4e8894
4e8802:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
4e8807:	0f 87 87 00 00 00    	ja     0x4e8894
4e880d:	6a ff                	push   $0xffffffff
4e880f:	6a 01                	push   $0x1
4e8811:	50                   	push   %eax
4e8812:	56                   	push   %esi
4e8813:	ff 75 08             	push   0x8(%ebp)
4e8816:	e8 95 ea 02 00       	call   0x5172b0
4e881b:	83 c4 14             	add    $0x14,%esp
4e881e:	5f                   	pop    %edi
4e881f:	5b                   	pop    %ebx
4e8820:	5e                   	pop    %esi
4e8821:	8b e5                	mov    %ebp,%esp
4e8823:	5d                   	pop    %ebp
4e8824:	c3                   	ret
4e8825:	8b 45 e8             	mov    -0x18(%ebp),%eax
4e8828:	99                   	cltd
4e8829:	89 55 10             	mov    %edx,0x10(%ebp)
4e882c:	8b d7                	mov    %edi,%edx
4e882e:	03 d1                	add    %ecx,%edx
4e8830:	8b cb                	mov    %ebx,%ecx
4e8832:	89 55 dc             	mov    %edx,-0x24(%ebp)
4e8835:	8b 55 f4             	mov    -0xc(%ebp),%edx
4e8838:	13 ca                	adc    %edx,%ecx
4e883a:	3b 4d 10             	cmp    0x10(%ebp),%ecx
4e883d:	7c 2d                	jl     0x4e886c
4e883f:	7f 05                	jg     0x4e8846
4e8841:	39 45 dc             	cmp    %eax,-0x24(%ebp)
4e8844:	76 26                	jbe    0x4e886c
4e8846:	8b 5d 10             	mov    0x10(%ebp),%ebx
4e8849:	8b f8                	mov    %eax,%edi
4e884b:	8b 45 fc             	mov    -0x4(%ebp),%eax
4e884e:	2b f8                	sub    %eax,%edi
4e8850:	1b da                	sbb    %edx,%ebx
4e8852:	85 db                	test   %ebx,%ebx
4e8854:	7f 19                	jg     0x4e886f
4e8856:	7c 04                	jl     0x4e885c
4e8858:	85 ff                	test   %edi,%edi
4e885a:	73 13                	jae    0x4e886f
4e885c:	0f 57 c0             	xorps  %xmm0,%xmm0
4e885f:	66 0f 13 45 f0       	movlpd %xmm0,-0x10(%ebp)
4e8864:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4e8867:	8b 7d f0             	mov    -0x10(%ebp),%edi
4e886a:	eb 03                	jmp    0x4e886f
4e886c:	8b 45 fc             	mov    -0x4(%ebp),%eax
4e886f:	03 c6                	add    %esi,%eax
4e8871:	85 db                	test   %ebx,%ebx
4e8873:	75 1f                	jne    0x4e8894
4e8875:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
4e887b:	77 17                	ja     0x4e8894
4e887d:	6a ff                	push   $0xffffffff
4e887f:	53                   	push   %ebx
4e8880:	57                   	push   %edi
4e8881:	50                   	push   %eax
4e8882:	ff 75 08             	push   0x8(%ebp)
4e8885:	e8 26 ea 02 00       	call   0x5172b0
4e888a:	83 c4 14             	add    $0x14,%esp
4e888d:	5f                   	pop    %edi
4e888e:	5b                   	pop    %ebx
4e888f:	5e                   	pop    %esi
4e8890:	8b e5                	mov    %ebp,%esp
4e8892:	5d                   	pop    %ebp
4e8893:	c3                   	ret
4e8894:	8b 45 08             	mov    0x8(%ebp),%eax
4e8897:	85 c0                	test   %eax,%eax
4e8899:	74 45                	je     0x4e88e0
4e889b:	8b 30                	mov    (%eax),%esi
4e889d:	c7 40 14 12 00 00 00 	movl   $0x12,0x14(%eax)
4e88a4:	b8 00 24 00 00       	mov    $0x2400,%eax
4e88a9:	66 85 46 08          	test   %ax,0x8(%esi)
4e88ad:	75 06                	jne    0x4e88b5
4e88af:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
4e88b3:	74 09                	je     0x4e88be
4e88b5:	56                   	push   %esi
4e88b6:	e8 55 25 07 00       	call   0x55ae10
4e88bb:	83 c4 04             	add    $0x4,%esp
4e88be:	c6 46 0a 01          	movb   $0x1,0xa(%esi)
4e88c2:	b8 02 0a 00 00       	mov    $0xa02,%eax
4e88c7:	66 89 46 08          	mov    %ax,0x8(%esi)
4e88cb:	c7 46 0c 16 00 00 00 	movl   $0x16,0xc(%esi)
4e88d2:	c7 46 24 00 00 00 00 	movl   $0x0,0x24(%esi)
4e88d9:	c7 46 10 00 88 6b 00 	movl   $0x6b8800,0x10(%esi)
4e88e0:	5f                   	pop    %edi
4e88e1:	5b                   	pop    %ebx
4e88e2:	5e                   	pop    %esi
4e88e3:	8b e5                	mov    %ebp,%esp
4e88e5:	5d                   	pop    %ebp
4e88e6:	c3                   	ret
4e88e7:	cc                   	int3
4e88e8:	cc                   	int3
4e88e9:	cc                   	int3
4e88ea:	cc                   	int3
4e88eb:	cc                   	int3
4e88ec:	cc                   	int3
4e88ed:	cc                   	int3
4e88ee:	cc                   	int3
4e88ef:	cc                   	int3
4e88f0:	55                   	push   %ebp
4e88f1:	8b ec                	mov    %esp,%ebp
4e88f3:	83 ec 1c             	sub    $0x1c,%esp
4e88f6:	8b 45 10             	mov    0x10(%ebp),%eax
4e88f9:	8b 4d 18             	mov    0x18(%ebp),%ecx
4e88fc:	99                   	cltd
4e88fd:	53                   	push   %ebx
4e88fe:	8b d8                	mov    %eax,%ebx
4e8900:	8b 45 14             	mov    0x14(%ebp),%eax
4e8903:	03 d8                	add    %eax,%ebx
4e8905:	56                   	push   %esi
4e8906:	8b 75 08             	mov    0x8(%ebp),%esi
4e8909:	13 d1                	adc    %ecx,%edx
4e890b:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4e890e:	89 55 ec             	mov    %edx,-0x14(%ebp)
4e8911:	3b 56 1c             	cmp    0x1c(%esi),%edx
4e8914:	7c 12                	jl     0x4e8928
4e8916:	7f 05                	jg     0x4e891d
4e8918:	3b 5e 18             	cmp    0x18(%esi),%ebx
4e891b:	76 0b                	jbe    0x4e8928
4e891d:	5e                   	pop    %esi
4e891e:	b8 0a 02 00 00       	mov    $0x20a,%eax
4e8923:	5b                   	pop    %ebx
4e8924:	8b e5                	mov    %ebp,%esp
4e8926:	5d                   	pop    %ebp
4e8927:	c3                   	ret
4e8928:	57                   	push   %edi
4e8929:	39 46 28             	cmp    %eax,0x28(%esi)
4e892c:	75 0e                	jne    0x4e893c
4e892e:	39 4e 2c             	cmp    %ecx,0x2c(%esi)
4e8931:	75 09                	jne    0x4e893c
4e8933:	0b c1                	or     %ecx,%eax
4e8935:	74 05                	je     0x4e893c
4e8937:	8b 5e 30             	mov    0x30(%esi),%ebx
4e893a:	eb 4e                	jmp    0x4e898a
4e893c:	8b 5e 10             	mov    0x10(%esi),%ebx
4e893f:	0f 57 c0             	xorps  %xmm0,%xmm0
4e8942:	66 0f 13 45 e4       	movlpd %xmm0,-0x1c(%ebp)
4e8947:	85 db                	test   %ebx,%ebx
4e8949:	74 3f                	je     0x4e898a
4e894b:	8b 46 04             	mov    0x4(%esi),%eax
4e894e:	8b 7d e4             	mov    -0x1c(%ebp),%edi
4e8951:	8b 75 18             	mov    0x18(%ebp),%esi
4e8954:	99                   	cltd
4e8955:	8b c8                	mov    %eax,%ecx
4e8957:	89 55 f8             	mov    %edx,-0x8(%ebp)
4e895a:	8b 45 e8             	mov    -0x18(%ebp),%eax
4e895d:	8b 55 14             	mov    0x14(%ebp),%edx
4e8960:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4e8963:	89 45 fc             	mov    %eax,-0x4(%ebp)
4e8966:	8b 45 f8             	mov    -0x8(%ebp),%eax
4e8969:	03 f9                	add    %ecx,%edi
4e896b:	13 45 fc             	adc    -0x4(%ebp),%eax
4e896e:	89 45 fc             	mov    %eax,-0x4(%ebp)
4e8971:	3b c6                	cmp    %esi,%eax
4e8973:	7f 0f                	jg     0x4e8984
4e8975:	7c 04                	jl     0x4e897b
4e8977:	3b fa                	cmp    %edx,%edi
4e8979:	77 09                	ja     0x4e8984
4e897b:	8b 1b                	mov    (%ebx),%ebx
4e897d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4e8980:	85 db                	test   %ebx,%ebx
4e8982:	75 e2                	jne    0x4e8966
4e8984:	8b 75 08             	mov    0x8(%ebp),%esi
4e8987:	8b 4d 18             	mov    0x18(%ebp),%ecx
4e898a:	8b 46 04             	mov    0x4(%esi),%eax
4e898d:	99                   	cltd
4e898e:	52                   	push   %edx
4e898f:	50                   	push   %eax
4e8990:	51                   	push   %ecx
4e8991:	ff 75 14             	push   0x14(%ebp)
4e8994:	e8 37 98 0f 00       	call   0x5e21d0
4e8999:	8b c8                	mov    %eax,%ecx
4e899b:	8b 45 10             	mov    0x10(%ebp),%eax
4e899e:	66 90                	xchg   %ax,%ax
4e89a0:	8b 7e 04             	mov    0x4(%esi),%edi
4e89a3:	2b f9                	sub    %ecx,%edi
4e89a5:	3b c7                	cmp    %edi,%eax
4e89a7:	8b f7                	mov    %edi,%esi
4e89a9:	0f 4c f0             	cmovl  %eax,%esi
4e89ac:	8d 41 04             	lea    0x4(%ecx),%eax
4e89af:	56                   	push   %esi
4e89b0:	03 c3                	add    %ebx,%eax
4e89b2:	50                   	push   %eax
4e89b3:	ff 75 0c             	push   0xc(%ebp)
4e89b6:	e8 45 a5 0f 00       	call   0x5e2f00
4e89bb:	8b 45 10             	mov    0x10(%ebp),%eax
4e89be:	83 c4 0c             	add    $0xc,%esp
4e89c1:	01 75 0c             	add    %esi,0xc(%ebp)
4e89c4:	b9 00 00 00 00       	mov    $0x0,%ecx
4e89c9:	2b c7                	sub    %edi,%eax
4e89cb:	89 45 10             	mov    %eax,0x10(%ebp)
4e89ce:	78 0d                	js     0x4e89dd
4e89d0:	8b 1b                	mov    (%ebx),%ebx
4e89d2:	85 db                	test   %ebx,%ebx
4e89d4:	74 13                	je     0x4e89e9
4e89d6:	8b 75 08             	mov    0x8(%ebp),%esi
4e89d9:	85 c0                	test   %eax,%eax
4e89db:	7f c3                	jg     0x4e89a0
4e89dd:	85 db                	test   %ebx,%ebx
4e89df:	74 08                	je     0x4e89e9
4e89e1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4e89e4:	8b 55 ec             	mov    -0x14(%ebp),%edx
4e89e7:	eb 0e                	jmp    0x4e89f7
4e89e9:	0f 57 c0             	xorps  %xmm0,%xmm0
4e89ec:	66 0f 13 45 14       	movlpd %xmm0,0x14(%ebp)
4e89f1:	8b 55 18             	mov    0x18(%ebp),%edx
4e89f4:	8b 4d 14             	mov    0x14(%ebp),%ecx
4e89f7:	8b 45 08             	mov    0x8(%ebp),%eax
4e89fa:	5f                   	pop    %edi
4e89fb:	5e                   	pop    %esi
4e89fc:	89 58 30             	mov    %ebx,0x30(%eax)
4e89ff:	89 48 28             	mov    %ecx,0x28(%eax)
4e8a02:	89 50 2c             	mov    %edx,0x2c(%eax)