5ac7e6:	0f 88 a4 00 00 00    	js     0x5ac890
5ac7ec:	0f 84 94 00 00 00    	je     0x5ac886
5ac7f2:	01 7e 1c             	add    %edi,0x1c(%esi)
5ac7f5:	29 7e 18             	sub    %edi,0x18(%esi)
5ac7f8:	75 c6                	jne    0x5ac7c0
5ac7fa:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
5ac801:	3b 5e 04             	cmp    0x4(%esi),%ebx
5ac804:	7c 49                	jl     0x5ac84f
5ac806:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5ac80a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
5ac810:	53                   	push   %ebx
5ac811:	50                   	push   %eax
5ac812:	ff 75 24             	push   0x24(%ebp)
5ac815:	e8 36 63 f0 ff       	call   0x4b2b50
5ac81a:	8b f8                	mov    %eax,%edi
5ac81c:	83 c4 0c             	add    $0xc,%esp
5ac81f:	85 ff                	test   %edi,%edi
5ac821:	7f 0f                	jg     0x5ac832
5ac823:	55                   	push   %ebp
5ac824:	e8 77 5c f0 ff       	call   0x4b24a0
5ac829:	83 c4 04             	add    $0x4,%esp
5ac82c:	85 ff                	test   %edi,%edi
5ac82e:	78 60                	js     0x5ac890
5ac830:	74 54                	je     0x5ac886
5ac832:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5ac836:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5ac83a:	03 cf                	add    %edi,%ecx
5ac83c:	03 c7                	add    %edi,%eax
5ac83e:	89 4c 24 10          	mov    %ecx,0x10(%esp)
5ac842:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5ac846:	2b df                	sub    %edi,%ebx
5ac848:	74 57                	je     0x5ac8a1
5ac84a:	3b 5e 04             	cmp    0x4(%esi),%ebx
5ac84d:	7d c1                	jge    0x5ac810
5ac84f:	8b 7e 04             	mov    0x4(%esi),%edi
5ac852:	2b 7e 1c             	sub    0x1c(%esi),%edi
5ac855:	2b 7e 18             	sub    0x18(%esi),%edi
5ac858:	3b fb                	cmp    %ebx,%edi
5ac85a:	0f 8c 32 ff ff ff    	jl     0x5ac792
5ac860:	8b 46 14             	mov    0x14(%esi),%eax
5ac863:	03 46 1c             	add    0x1c(%esi),%eax
5ac866:	03 46 18             	add    0x18(%esi),%eax
5ac869:	53                   	push   %ebx
5ac86a:	ff 74 24 20          	push   0x20(%esp)
5ac86e:	50                   	push   %eax
5ac86f:	e8 8c 66 03 00       	call   0x5e2f00
5ac874:	01 5e 18             	add    %ebx,0x18(%esi)
5ac877:	83 c4 0c             	add    $0xc,%esp
5ac87a:	8b 44 24 10          	mov    0x10(%esp),%eax
5ac87e:	03 c3                	add    %ebx,%eax
5ac880:	5f                   	pop    %edi
5ac881:	5e                   	pop    %esi
5ac882:	5d                   	pop    %ebp
5ac883:	5b                   	pop    %ebx
5ac884:	59                   	pop    %ecx
5ac885:	c3                   	ret
5ac886:	8b 44 24 10          	mov    0x10(%esp),%eax
5ac88a:	5f                   	pop    %edi
5ac88b:	5e                   	pop    %esi
5ac88c:	5d                   	pop    %ebp
5ac88d:	5b                   	pop    %ebx
5ac88e:	59                   	pop    %ecx
5ac88f:	c3                   	ret
5ac890:	8b 44 24 10          	mov    0x10(%esp),%eax
5ac894:	85 c0                	test   %eax,%eax
5ac896:	0f 4f f8             	cmovg  %eax,%edi
5ac899:	8b c7                	mov    %edi,%eax
5ac89b:	5f                   	pop    %edi
5ac89c:	5e                   	pop    %esi
5ac89d:	5d                   	pop    %ebp
5ac89e:	5b                   	pop    %ebx
5ac89f:	59                   	pop    %ecx
5ac8a0:	c3                   	ret
5ac8a1:	5f                   	pop    %edi
5ac8a2:	5e                   	pop    %esi
5ac8a3:	5d                   	pop    %ebp
5ac8a4:	8b c1                	mov    %ecx,%eax
5ac8a6:	5b                   	pop    %ebx
5ac8a7:	59                   	pop    %ecx
5ac8a8:	c3                   	ret
5ac8a9:	5e                   	pop    %esi
5ac8aa:	5d                   	pop    %ebp
5ac8ab:	33 c0                	xor    %eax,%eax
5ac8ad:	5b                   	pop    %ebx
5ac8ae:	59                   	pop    %ecx
5ac8af:	c3                   	ret
5ac8b0:	33 c0                	xor    %eax,%eax
5ac8b2:	5b                   	pop    %ebx
5ac8b3:	59                   	pop    %ecx
5ac8b4:	c3                   	ret
5ac8b5:	cc                   	int3
5ac8b6:	cc                   	int3
5ac8b7:	cc                   	int3
5ac8b8:	cc                   	int3
5ac8b9:	cc                   	int3
5ac8ba:	cc                   	int3
5ac8bb:	cc                   	int3
5ac8bc:	cc                   	int3
5ac8bd:	cc                   	int3
5ac8be:	cc                   	int3
5ac8bf:	cc                   	int3
5ac8c0:	55                   	push   %ebp
5ac8c1:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
5ac8c5:	85 ed                	test   %ebp,%ebp
5ac8c7:	75 04                	jne    0x5ac8cd
5ac8c9:	33 c0                	xor    %eax,%eax
5ac8cb:	5d                   	pop    %ebp
5ac8cc:	c3                   	ret
5ac8cd:	8b 4c 24 08          	mov    0x8(%esp),%ecx
5ac8d1:	56                   	push   %esi
5ac8d2:	8b 71 20             	mov    0x20(%ecx),%esi
5ac8d5:	85 f6                	test   %esi,%esi
5ac8d7:	0f 84 f4 00 00 00    	je     0x5ac9d1
5ac8dd:	83 79 24 00          	cmpl   $0x0,0x24(%ecx)
5ac8e1:	0f 84 ea 00 00 00    	je     0x5ac9d1
5ac8e7:	57                   	push   %edi
5ac8e8:	33 c0                	xor    %eax,%eax
5ac8ea:	6a 0f                	push   $0xf
5ac8ec:	51                   	push   %ecx
5ac8ed:	89 44 24 1c          	mov    %eax,0x1c(%esp)
5ac8f1:	e8 9a 5b f0 ff       	call   0x4b2490
5ac8f6:	8b 7c 24 20          	mov    0x20(%esp),%edi
5ac8fa:	83 c4 08             	add    $0x8,%esp
5ac8fd:	53                   	push   %ebx
5ac8fe:	66 90                	xchg   %ax,%ax
5ac900:	8b 5e 0c             	mov    0xc(%esi),%ebx
5ac903:	85 db                	test   %ebx,%ebx
5ac905:	74 2e                	je     0x5ac935
5ac907:	8b 46 08             	mov    0x8(%esi),%eax
5ac90a:	3b df                	cmp    %edi,%ebx
5ac90c:	0f 4f df             	cmovg  %edi,%ebx
5ac90f:	03 46 10             	add    0x10(%esi),%eax
5ac912:	53                   	push   %ebx
5ac913:	50                   	push   %eax
5ac914:	55                   	push   %ebp
5ac915:	e8 e6 65 03 00       	call   0x5e2f00
5ac91a:	8b 44 24 24          	mov    0x24(%esp),%eax
5ac91e:	83 c4 0c             	add    $0xc,%esp
5ac921:	01 5e 10             	add    %ebx,0x10(%esi)
5ac924:	03 c3                	add    %ebx,%eax
5ac926:	29 5e 0c             	sub    %ebx,0xc(%esi)
5ac929:	89 44 24 18          	mov    %eax,0x18(%esp)
5ac92d:	3b fb                	cmp    %ebx,%edi
5ac92f:	74 45                	je     0x5ac976
5ac931:	2b fb                	sub    %ebx,%edi
5ac933:	03 eb                	add    %ebx,%ebp
5ac935:	8b 06                	mov    (%esi),%eax
5ac937:	3b f8                	cmp    %eax,%edi
5ac939:	7f 50                	jg     0x5ac98b
5ac93b:	50                   	push   %eax
5ac93c:	8b 44 24 18          	mov    0x18(%esp),%eax
5ac940:	ff 76 08             	push   0x8(%esi)
5ac943:	ff 70 24             	push   0x24(%eax)
5ac946:	e8 75 60 f0 ff       	call   0x4b29c0
5ac94b:	8b d8                	mov    %eax,%ebx
5ac94d:	83 c4 0c             	add    $0xc,%esp
5ac950:	85 db                	test   %ebx,%ebx
5ac952:	7f 12                	jg     0x5ac966
5ac954:	ff 74 24 14          	push   0x14(%esp)
5ac958:	e8 43 5b f0 ff       	call   0x4b24a0
5ac95d:	83 c4 04             	add    $0x4,%esp
5ac960:	85 db                	test   %ebx,%ebx
5ac962:	78 17                	js     0x5ac97b
5ac964:	74 0c                	je     0x5ac972
5ac966:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5ac96d:	89 5e 0c             	mov    %ebx,0xc(%esi)
5ac970:	eb 8e                	jmp    0x5ac900
5ac972:	8b 44 24 18          	mov    0x18(%esp),%eax
5ac976:	5b                   	pop    %ebx
5ac977:	5f                   	pop    %edi
5ac978:	5e                   	pop    %esi
5ac979:	5d                   	pop    %ebp
5ac97a:	c3                   	ret
5ac97b:	8b 44 24 18          	mov    0x18(%esp),%eax
5ac97f:	85 c0                	test   %eax,%eax
5ac981:	0f 4f d8             	cmovg  %eax,%ebx
5ac984:	8b c3                	mov    %ebx,%eax
5ac986:	5b                   	pop    %ebx
5ac987:	5f                   	pop    %edi
5ac988:	5e                   	pop    %esi
5ac989:	5d                   	pop    %ebp
5ac98a:	c3                   	ret
5ac98b:	8b 5c 24 18          	mov    0x18(%esp),%ebx
5ac98f:	90                   	nop
5ac990:	8b 44 24 14          	mov    0x14(%esp),%eax
5ac994:	57                   	push   %edi
5ac995:	55                   	push   %ebp
5ac996:	ff 70 24             	push   0x24(%eax)
5ac999:	e8 22 60 f0 ff       	call   0x4b29c0
5ac99e:	8b f0                	mov    %eax,%esi
5ac9a0:	83 c4 0c             	add    $0xc,%esp
5ac9a3:	85 f6                	test   %esi,%esi
5ac9a5:	7f 12                	jg     0x5ac9b9
5ac9a7:	ff 74 24 14          	push   0x14(%esp)
5ac9ab:	e8 f0 5a f0 ff       	call   0x4b24a0
5ac9b0:	83 c4 04             	add    $0x4,%esp
5ac9b3:	85 f6                	test   %esi,%esi
5ac9b5:	78 0e                	js     0x5ac9c5
5ac9b7:	74 cb                	je     0x5ac984
5ac9b9:	03 de                	add    %esi,%ebx
5ac9bb:	3b fe                	cmp    %esi,%edi
5ac9bd:	74 c5                	je     0x5ac984
5ac9bf:	03 ee                	add    %esi,%ebp
5ac9c1:	2b fe                	sub    %esi,%edi
5ac9c3:	eb cb                	jmp    0x5ac990
5ac9c5:	85 db                	test   %ebx,%ebx
5ac9c7:	0f 4f f3             	cmovg  %ebx,%esi
5ac9ca:	5b                   	pop    %ebx
5ac9cb:	5f                   	pop    %edi
5ac9cc:	8b c6                	mov    %esi,%eax
5ac9ce:	5e                   	pop    %esi
5ac9cf:	5d                   	pop    %ebp
5ac9d0:	c3                   	ret
5ac9d1:	5e                   	pop    %esi
5ac9d2:	33 c0                	xor    %eax,%eax
5ac9d4:	5d                   	pop    %ebp
5ac9d5:	c3                   	ret
5ac9d6:	cc                   	int3
5ac9d7:	cc                   	int3
5ac9d8:	cc                   	int3
5ac9d9:	cc                   	int3
5ac9da:	cc                   	int3
5ac9db:	cc                   	int3
5ac9dc:	cc                   	int3
5ac9dd:	cc                   	int3
5ac9de:	cc                   	int3
5ac9df:	cc                   	int3
5ac9e0:	8b 54 24 08          	mov    0x8(%esp),%edx
5ac9e4:	8b c2                	mov    %edx,%eax
5ac9e6:	56                   	push   %esi
5ac9e7:	8d 70 01             	lea    0x1(%eax),%esi
5ac9ea:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
5ac9f0:	8a 08                	mov    (%eax),%cl
5ac9f2:	40                   	inc    %eax
5ac9f3:	84 c9                	test   %cl,%cl
5ac9f5:	75 f9                	jne    0x5ac9f0
5ac9f7:	2b c6                	sub    %esi,%eax
5ac9f9:	50                   	push   %eax
5ac9fa:	52                   	push   %edx
5ac9fb:	ff 74 24 10          	push   0x10(%esp)
5ac9ff:	e8 2c fd ff ff       	call   0x5ac730
5aca04:	83 c4 0c             	add    $0xc,%esp
5aca07:	5e                   	pop    %esi
5aca08:	c3                   	ret
5aca09:	cc                   	int3
5aca0a:	cc                   	int3
5aca0b:	cc                   	int3
5aca0c:	cc                   	int3
5aca0d:	cc                   	int3
5aca0e:	cc                   	int3
5aca0f:	cc                   	int3
5aca10:	b8 04 00 00 00       	mov    $0x4,%eax
5aca15:	e8 d6 4a 03 00       	call   0x5e14f0
5aca1a:	8b 44 24 08          	mov    0x8(%esp),%eax
5aca1e:	53                   	push   %ebx
5aca1f:	55                   	push   %ebp
5aca20:	8b 6c 24 18          	mov    0x18(%esp),%ebp
5aca24:	56                   	push   %esi
5aca25:	8b 70 20             	mov    0x20(%eax),%esi
5aca28:	4d                   	dec    %ebp
5aca29:	57                   	push   %edi
5aca2a:	6a 0f                	push   $0xf
5aca2c:	33 ff                	xor    %edi,%edi
5aca2e:	50                   	push   %eax
5aca2f:	89 7c 24 18          	mov    %edi,0x18(%esp)
5aca33:	e8 58 5a f0 ff       	call   0x4b2490
5aca38:	8b 5c 24 24          	mov    0x24(%esp),%ebx
5aca3c:	83 c4 08             	add    $0x8,%esp
5aca3f:	90                   	nop
5aca40:	8b 4e 0c             	mov    0xc(%esi),%ecx
5aca43:	85 c9                	test   %ecx,%ecx
5aca45:	7e 60                	jle    0x5acaa7
5aca47:	8b 56 08             	mov    0x8(%esi),%edx
5aca4a:	33 c0                	xor    %eax,%eax
5aca4c:	03 56 10             	add    0x10(%esi),%edx
5aca4f:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
5aca56:	00
5aca57:	85 c9                	test   %ecx,%ecx
5aca59:	7e 29                	jle    0x5aca84
5aca5b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
5aca60:	3b c5                	cmp    %ebp,%eax
5aca62:	7d 12                	jge    0x5aca76
5aca64:	8a 0c 10             	mov    (%eax,%edx,1),%cl
5aca67:	88 0b                	mov    %cl,(%ebx)
5aca69:	43                   	inc    %ebx
5aca6a:	80 3c 10 0a          	cmpb   $0xa,(%eax,%edx,1)
5aca6e:	74 0c                	je     0x5aca7c
5aca70:	40                   	inc    %eax
5aca71:	3b 46 0c             	cmp    0xc(%esi),%eax
5aca74:	7c ea                	jl     0x5aca60
5aca76:	8b 4c 24 20          	mov    0x20(%esp),%ecx
5aca7a:	eb 0a                	jmp    0x5aca86
5aca7c:	b9 01 00 00 00       	mov    $0x1,%ecx
5aca81:	40                   	inc    %eax
5aca82:	eb 02                	jmp    0x5aca86
5aca84:	33 c9                	xor    %ecx,%ecx
5aca86:	29 46 0c             	sub    %eax,0xc(%esi)
5aca89:	03 f8                	add    %eax,%edi
5aca8b:	01 46 10             	add    %eax,0x10(%esi)
5aca8e:	2b e8                	sub    %eax,%ebp
5aca90:	89 7c 24 10          	mov    %edi,0x10(%esp)
5aca94:	85 c9                	test   %ecx,%ecx
5aca96:	75 04                	jne    0x5aca9c
5aca98:	85 ed                	test   %ebp,%ebp
5aca9a:	75 a4                	jne    0x5aca40
5aca9c:	8b c7                	mov    %edi,%eax
5aca9e:	c6 03 00             	movb   $0x0,(%ebx)
5acaa1:	5f                   	pop    %edi
5acaa2:	5e                   	pop    %esi
5acaa3:	5d                   	pop    %ebp
5acaa4:	5b                   	pop    %ebx
5acaa5:	59                   	pop    %ecx
5acaa6:	c3                   	ret
5acaa7:	ff 36                	push   (%esi)
5acaa9:	8b 44 24 1c          	mov    0x1c(%esp),%eax
5acaad:	ff 76 08             	push   0x8(%esi)
5acab0:	ff 70 24             	push   0x24(%eax)
5acab3:	e8 08 5f f0 ff       	call   0x4b29c0
5acab8:	8b f8                	mov    %eax,%edi
5acaba:	83 c4 0c             	add    $0xc,%esp
5acabd:	85 ff                	test   %edi,%edi
5acabf:	7f 15                	jg     0x5acad6
5acac1:	ff 74 24 18          	push   0x18(%esp)
5acac5:	e8 d6 59 f0 ff       	call   0x4b24a0
5acaca:	83 c4 04             	add    $0x4,%esp
5acacd:	c6 03 00             	movb   $0x0,(%ebx)
5acad0:	85 ff                	test   %edi,%edi
5acad2:	78 1f                	js     0x5acaf3
5acad4:	74 13                	je     0x5acae9
5acad6:	89 7e 0c             	mov    %edi,0xc(%esi)
5acad9:	8b 7c 24 10          	mov    0x10(%esp),%edi
5acadd:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
5acae4:	e9 57 ff ff ff       	jmp    0x5aca40
5acae9:	8b 44 24 10          	mov    0x10(%esp),%eax
5acaed:	5f                   	pop    %edi
5acaee:	5e                   	pop    %esi
5acaef:	5d                   	pop    %ebp
5acaf0:	5b                   	pop    %ebx
5acaf1:	59                   	pop    %ecx
5acaf2:	c3                   	ret
5acaf3:	8b 44 24 10          	mov    0x10(%esp),%eax
5acaf7:	85 c0                	test   %eax,%eax
5acaf9:	0f 4f f8             	cmovg  %eax,%edi
5acafc:	8b c7                	mov    %edi,%eax
5acafe:	5f                   	pop    %edi
5acaff:	5e                   	pop    %esi
5acb00:	5d                   	pop    %ebp
5acb01:	5b                   	pop    %ebx
5acb02:	59                   	pop    %ecx
5acb03:	c3                   	ret