4ab8d9:	ff 76 0c             	push   0xc(%esi)
4ab8dc:	50                   	push   %eax
4ab8dd:	51                   	push   %ecx
4ab8de:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4ab8e1:	53                   	push   %ebx
4ab8e2:	e8 d9 ec ff ff       	call   0x4aa5c0
4ab8e7:	50                   	push   %eax
4ab8e8:	e8 33 fc ff ff       	call   0x4ab520
4ab8ed:	83 c4 1c             	add    $0x1c,%esp
4ab8f0:	e9 81 00 00 00       	jmp    0x4ab976
4ab8f5:	6a 4f                	push   $0x4f
4ab8f7:	68 e0 b2 60 00       	push   $0x60b2e0
4ab8fc:	6a 03                	push   $0x3
4ab8fe:	8d 4d cc             	lea    -0x34(%ebp),%ecx
4ab901:	e8 da 99 fc ff       	call   0x4752e0
4ab906:	68 fc b1 60 00       	push   $0x60b1fc
4ab90b:	8b c8                	mov    %eax,%ecx
4ab90d:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4ab914:	e8 d7 9f fc ff       	call   0x4758f0
4ab919:	50                   	push   %eax
4ab91a:	8d 4d b7             	lea    -0x49(%ebp),%ecx
4ab91d:	e8 5e 9d fc ff       	call   0x475680
4ab922:	8d 4d cc             	lea    -0x34(%ebp),%ecx
4ab925:	e8 e6 9c fc ff       	call   0x475610
4ab92a:	eb 48                	jmp    0x4ab974
4ab92c:	8b 45 b8             	mov    -0x48(%ebp),%eax
4ab92f:	ff 24 85 90 be 4a 00 	jmp    *0x4abe90(,%eax,4)
4ab936:	8d 45 c0             	lea    -0x40(%ebp),%eax
4ab939:	50                   	push   %eax
4ab93a:	57                   	push   %edi
4ab93b:	e8 40 52 fa ff       	call   0x450b80
4ab940:	8b f8                	mov    %eax,%edi
4ab942:	83 c4 08             	add    $0x8,%esp
4ab945:	85 ff                	test   %edi,%edi
4ab947:	0f 84 52 04 00 00    	je     0x4abd9f
4ab94d:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4ab951:	8b 46 0c             	mov    0xc(%esi),%eax
4ab954:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4ab957:	50                   	push   %eax
4ab958:	ff 75 c0             	push   -0x40(%ebp)
4ab95b:	74 0f                	je     0x4ab96c
4ab95d:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4ab961:	50                   	push   %eax
4ab962:	6a 05                	push   $0x5
4ab964:	53                   	push   %ebx
4ab965:	e8 06 af ff ff       	call   0x4a6870
4ab96a:	eb 08                	jmp    0x4ab974
4ab96c:	6a 05                	push   $0x5
4ab96e:	53                   	push   %ebx
4ab96f:	e8 ec ef ff ff       	call   0x4aa960
4ab974:	8b c7                	mov    %edi,%eax
4ab976:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4ab979:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4ab980:	59                   	pop    %ecx
4ab981:	5f                   	pop    %edi
4ab982:	5e                   	pop    %esi
4ab983:	5b                   	pop    %ebx
4ab984:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4ab987:	33 cd                	xor    %ebp,%ecx
4ab989:	e8 98 60 12 00       	call   0x5d1a26
4ab98e:	8b e5                	mov    %ebp,%esp
4ab990:	5d                   	pop    %ebp
4ab991:	c2 18 00             	ret    $0x18
4ab994:	8d 45 c0             	lea    -0x40(%ebp),%eax
4ab997:	50                   	push   %eax
4ab998:	57                   	push   %edi
4ab999:	e8 e2 51 fa ff       	call   0x450b80
4ab99e:	8b f8                	mov    %eax,%edi
4ab9a0:	83 c4 08             	add    $0x8,%esp
4ab9a3:	85 ff                	test   %edi,%edi
4ab9a5:	0f 84 f4 03 00 00    	je     0x4abd9f
4ab9ab:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4ab9af:	8b 46 0c             	mov    0xc(%esi),%eax
4ab9b2:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4ab9b5:	50                   	push   %eax
4ab9b6:	ff 75 c4             	push   -0x3c(%ebp)
4ab9b9:	ff 75 c0             	push   -0x40(%ebp)
4ab9bc:	74 0f                	je     0x4ab9cd
4ab9be:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4ab9c2:	50                   	push   %eax
4ab9c3:	6a 03                	push   $0x3
4ab9c5:	53                   	push   %ebx
4ab9c6:	e8 65 b0 ff ff       	call   0x4a6a30
4ab9cb:	eb a7                	jmp    0x4ab974
4ab9cd:	6a 03                	push   $0x3
4ab9cf:	53                   	push   %ebx
4ab9d0:	e8 0b f0 ff ff       	call   0x4aa9e0
4ab9d5:	eb 9d                	jmp    0x4ab974
4ab9d7:	8d 45 c0             	lea    -0x40(%ebp),%eax
4ab9da:	50                   	push   %eax
4ab9db:	57                   	push   %edi
4ab9dc:	e8 9f 51 fa ff       	call   0x450b80
4ab9e1:	8b f8                	mov    %eax,%edi
4ab9e3:	83 c4 08             	add    $0x8,%esp
4ab9e6:	85 ff                	test   %edi,%edi
4ab9e8:	0f 84 b1 03 00 00    	je     0x4abd9f
4ab9ee:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4ab9f2:	8b 46 0c             	mov    0xc(%esi),%eax
4ab9f5:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4ab9f8:	50                   	push   %eax
4ab9f9:	ff 75 c0             	push   -0x40(%ebp)
4ab9fc:	74 12                	je     0x4aba10
4ab9fe:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4aba02:	50                   	push   %eax
4aba03:	6a 0d                	push   $0xd
4aba05:	53                   	push   %ebx
4aba06:	e8 65 ae ff ff       	call   0x4a6870
4aba0b:	e9 64 ff ff ff       	jmp    0x4ab974
4aba10:	6a 0d                	push   $0xd
4aba12:	53                   	push   %ebx
4aba13:	e8 48 ef ff ff       	call   0x4aa960
4aba18:	e9 57 ff ff ff       	jmp    0x4ab974
4aba1d:	8d 45 c0             	lea    -0x40(%ebp),%eax
4aba20:	50                   	push   %eax
4aba21:	57                   	push   %edi
4aba22:	e8 59 51 fa ff       	call   0x450b80
4aba27:	8b f8                	mov    %eax,%edi
4aba29:	83 c4 08             	add    $0x8,%esp
4aba2c:	85 ff                	test   %edi,%edi
4aba2e:	0f 84 6b 03 00 00    	je     0x4abd9f
4aba34:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4aba38:	8b 46 0c             	mov    0xc(%esi),%eax
4aba3b:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4aba3e:	50                   	push   %eax
4aba3f:	ff 75 c4             	push   -0x3c(%ebp)
4aba42:	ff 75 c0             	push   -0x40(%ebp)
4aba45:	74 12                	je     0x4aba59
4aba47:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4aba4b:	50                   	push   %eax
4aba4c:	6a 04                	push   $0x4
4aba4e:	53                   	push   %ebx
4aba4f:	e8 dc af ff ff       	call   0x4a6a30
4aba54:	e9 1b ff ff ff       	jmp    0x4ab974
4aba59:	6a 04                	push   $0x4
4aba5b:	53                   	push   %ebx
4aba5c:	e8 7f ef ff ff       	call   0x4aa9e0
4aba61:	e9 0e ff ff ff       	jmp    0x4ab974
4aba66:	8d 45 c0             	lea    -0x40(%ebp),%eax
4aba69:	50                   	push   %eax
4aba6a:	57                   	push   %edi
4aba6b:	e8 10 51 fa ff       	call   0x450b80
4aba70:	8b f8                	mov    %eax,%edi
4aba72:	83 c4 08             	add    $0x8,%esp
4aba75:	85 ff                	test   %edi,%edi
4aba77:	0f 84 22 03 00 00    	je     0x4abd9f
4aba7d:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4aba81:	8b 45 c0             	mov    -0x40(%ebp),%eax
4aba84:	74 24                	je     0x4abaaa
4aba86:	0b 45 c4             	or     -0x3c(%ebp),%eax
4aba89:	74 04                	je     0x4aba8f
4aba8b:	b0 01                	mov    $0x1,%al
4aba8d:	eb 02                	jmp    0x4aba91
4aba8f:	32 c0                	xor    %al,%al
4aba91:	ff 76 0c             	push   0xc(%esi)
4aba94:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4aba97:	50                   	push   %eax
4aba98:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4aba9c:	50                   	push   %eax
4aba9d:	6a 08                	push   $0x8
4aba9f:	53                   	push   %ebx
4abaa0:	e8 0b ac ff ff       	call   0x4a66b0
4abaa5:	e9 ca fe ff ff       	jmp    0x4ab974
4abaaa:	0b 45 c4             	or     -0x3c(%ebp),%eax
4abaad:	74 16                	je     0x4abac5
4abaaf:	ff 76 0c             	push   0xc(%esi)
4abab2:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4abab5:	b0 01                	mov    $0x1,%al
4abab7:	50                   	push   %eax
4abab8:	6a 08                	push   $0x8
4ababa:	53                   	push   %ebx
4ababb:	e8 20 ee ff ff       	call   0x4aa8e0
4abac0:	e9 af fe ff ff       	jmp    0x4ab974
4abac5:	ff 76 0c             	push   0xc(%esi)
4abac8:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4abacb:	32 c0                	xor    %al,%al
4abacd:	50                   	push   %eax
4abace:	6a 08                	push   $0x8
4abad0:	53                   	push   %ebx
4abad1:	e8 0a ee ff ff       	call   0x4aa8e0
4abad6:	e9 99 fe ff ff       	jmp    0x4ab974
4abadb:	8d 45 c0             	lea    -0x40(%ebp),%eax
4abade:	50                   	push   %eax
4abadf:	57                   	push   %edi
4abae0:	e8 9b 50 fa ff       	call   0x450b80
4abae5:	8b f8                	mov    %eax,%edi
4abae7:	83 c4 08             	add    $0x8,%esp
4abaea:	85 ff                	test   %edi,%edi
4abaec:	0f 84 ad 02 00 00    	je     0x4abd9f
4abaf2:	8b 45 c0             	mov    -0x40(%ebp),%eax
4abaf5:	8b c8                	mov    %eax,%ecx
4abaf7:	83 e0 01             	and    $0x1,%eax
4abafa:	d1 e9                	shr    $1,%ecx
4abafc:	f7 d8                	neg    %eax
4abafe:	33 c8                	xor    %eax,%ecx
4abb00:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abb04:	8b 46 0c             	mov    0xc(%esi),%eax
4abb07:	50                   	push   %eax
4abb08:	51                   	push   %ecx
4abb09:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4abb0c:	74 12                	je     0x4abb20
4abb0e:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4abb12:	50                   	push   %eax
4abb13:	6a 11                	push   $0x11
4abb15:	53                   	push   %ebx
4abb16:	e8 55 ad ff ff       	call   0x4a6870
4abb1b:	e9 54 fe ff ff       	jmp    0x4ab974
4abb20:	6a 11                	push   $0x11
4abb22:	e9 47 fe ff ff       	jmp    0x4ab96e
4abb27:	8d 45 c0             	lea    -0x40(%ebp),%eax
4abb2a:	50                   	push   %eax
4abb2b:	57                   	push   %edi
4abb2c:	e8 4f 50 fa ff       	call   0x450b80
4abb31:	8b f8                	mov    %eax,%edi
4abb33:	83 c4 08             	add    $0x8,%esp
4abb36:	85 ff                	test   %edi,%edi
4abb38:	0f 84 61 02 00 00    	je     0x4abd9f
4abb3e:	8b 4d c0             	mov    -0x40(%ebp),%ecx
4abb41:	8b c1                	mov    %ecx,%eax
4abb43:	8b 55 c4             	mov    -0x3c(%ebp),%edx
4abb46:	83 e1 01             	and    $0x1,%ecx
4abb49:	0f ac d0 01          	shrd   $0x1,%edx,%eax
4abb4d:	89 45 bc             	mov    %eax,-0x44(%ebp)
4abb50:	33 c0                	xor    %eax,%eax
4abb52:	d1 ea                	shr    $1,%edx
4abb54:	f7 d9                	neg    %ecx
4abb56:	13 c0                	adc    %eax,%eax
4abb58:	31 4d bc             	xor    %ecx,-0x44(%ebp)
4abb5b:	8b 4d c8             	mov    -0x38(%ebp),%ecx
4abb5e:	f7 d8                	neg    %eax
4abb60:	33 d0                	xor    %eax,%edx
4abb62:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abb66:	8b 46 0c             	mov    0xc(%esi),%eax
4abb69:	50                   	push   %eax
4abb6a:	52                   	push   %edx
4abb6b:	ff 75 bc             	push   -0x44(%ebp)
4abb6e:	74 12                	je     0x4abb82
4abb70:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4abb74:	50                   	push   %eax
4abb75:	6a 12                	push   $0x12
4abb77:	53                   	push   %ebx
4abb78:	e8 b3 ae ff ff       	call   0x4a6a30
4abb7d:	e9 f2 fd ff ff       	jmp    0x4ab974
4abb82:	6a 12                	push   $0x12
4abb84:	53                   	push   %ebx
4abb85:	e8 56 ee ff ff       	call   0x4aa9e0
4abb8a:	e9 e5 fd ff ff       	jmp    0x4ab974
4abb8f:	8b 07                	mov    (%edi),%eax
4abb91:	83 c7 04             	add    $0x4,%edi
4abb94:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abb98:	8b 4e 0c             	mov    0xc(%esi),%ecx
4abb9b:	51                   	push   %ecx
4abb9c:	50                   	push   %eax
4abb9d:	8b ca                	mov    %edx,%ecx
4abb9f:	74 12                	je     0x4abbb3
4abba1:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4abba5:	50                   	push   %eax
4abba6:	6a 07                	push   $0x7
4abba8:	53                   	push   %ebx
4abba9:	e8 c2 ac ff ff       	call   0x4a6870
4abbae:	e9 c1 fd ff ff       	jmp    0x4ab974
4abbb3:	6a 07                	push   $0x7
4abbb5:	53                   	push   %ebx
4abbb6:	e8 a5 ed ff ff       	call   0x4aa960
4abbbb:	e9 b4 fd ff ff       	jmp    0x4ab974
4abbc0:	ff 76 0c             	push   0xc(%esi)
4abbc3:	8b 4f 04             	mov    0x4(%edi),%ecx
4abbc6:	8b 07                	mov    (%edi),%eax
4abbc8:	83 c7 08             	add    $0x8,%edi
4abbcb:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abbcf:	51                   	push   %ecx
4abbd0:	50                   	push   %eax
4abbd1:	8b ca                	mov    %edx,%ecx
4abbd3:	74 12                	je     0x4abbe7
4abbd5:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4abbd9:	50                   	push   %eax
4abbda:	6a 06                	push   $0x6
4abbdc:	53                   	push   %ebx
4abbdd:	e8 4e ae ff ff       	call   0x4a6a30
4abbe2:	e9 8d fd ff ff       	jmp    0x4ab974
4abbe7:	6a 06                	push   $0x6
4abbe9:	53                   	push   %ebx
4abbea:	e8 f1 ed ff ff       	call   0x4aa9e0
4abbef:	e9 80 fd ff ff       	jmp    0x4ab974
4abbf4:	8b 07                	mov    (%edi),%eax
4abbf6:	83 c7 04             	add    $0x4,%edi
4abbf9:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abbfd:	8b 4e 0c             	mov    0xc(%esi),%ecx
4abc00:	51                   	push   %ecx
4abc01:	50                   	push   %eax
4abc02:	8b ca                	mov    %edx,%ecx
4abc04:	74 12                	je     0x4abc18
4abc06:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4abc0a:	50                   	push   %eax
4abc0b:	6a 0f                	push   $0xf
4abc0d:	53                   	push   %ebx
4abc0e:	e8 5d ac ff ff       	call   0x4a6870
4abc13:	e9 5c fd ff ff       	jmp    0x4ab974
4abc18:	6a 0f                	push   $0xf
4abc1a:	e9 4f fd ff ff       	jmp    0x4ab96e
4abc1f:	ff 76 0c             	push   0xc(%esi)
4abc22:	8b 4f 04             	mov    0x4(%edi),%ecx
4abc25:	8b 07                	mov    (%edi),%eax
4abc27:	83 c7 08             	add    $0x8,%edi
4abc2a:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abc2e:	51                   	push   %ecx
4abc2f:	50                   	push   %eax
4abc30:	8b ca                	mov    %edx,%ecx
4abc32:	74 12                	je     0x4abc46
4abc34:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4abc38:	50                   	push   %eax
4abc39:	6a 10                	push   $0x10
4abc3b:	53                   	push   %ebx
4abc3c:	e8 ef ad ff ff       	call   0x4a6a30
4abc41:	e9 2e fd ff ff       	jmp    0x4ab974
4abc46:	6a 10                	push   $0x10
4abc48:	53                   	push   %ebx
4abc49:	e8 92 ed ff ff       	call   0x4aa9e0
4abc4e:	e9 21 fd ff ff       	jmp    0x4ab974
4abc53:	8b 07                	mov    (%edi),%eax
4abc55:	83 c7 04             	add    $0x4,%edi
4abc58:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abc5c:	89 45 b8             	mov    %eax,-0x48(%ebp)
4abc5f:	8b 46 0c             	mov    0xc(%esi),%eax
4abc62:	f3 0f 10 45 b8       	movss  -0x48(%ebp),%xmm0
4abc67:	50                   	push   %eax
4abc68:	51                   	push   %ecx
4abc69:	f3 0f 11 04 24       	movss  %xmm0,(%esp)
4abc6e:	8b ca                	mov    %edx,%ecx
4abc70:	74 12                	je     0x4abc84
4abc72:	0f b6 46 02          	movzbl 0x2(%esi),%eax
4abc76:	50                   	push   %eax
4abc77:	6a 02                	push   $0x2
4abc79:	53                   	push   %ebx
4abc7a:	e8 d1 ac ff ff       	call   0x4a6950
4abc7f:	e9 f0 fc ff ff       	jmp    0x4ab974
4abc84:	6a 02                	push   $0x2
4abc86:	53                   	push   %ebx
4abc87:	e8 14 ed ff ff       	call   0x4aa9a0
4abc8c:	e9 e3 fc ff ff       	jmp    0x4ab974
4abc91:	8b 07                	mov    (%edi),%eax
4abc93:	8b 4f 04             	mov    0x4(%edi),%ecx
4abc96:	83 c7 08             	add    $0x8,%edi
4abc99:	89 45 c0             	mov    %eax,-0x40(%ebp)
4abc9c:	8b 46 0c             	mov    0xc(%esi),%eax
4abc9f:	50                   	push   %eax
4abca0:	83 ec 08             	sub    $0x8,%esp
4abca3:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
4abca6:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
4abcaa:	8b ca                	mov    %edx,%ecx
4abcac:	f2 0f 10 45 c0       	movsd  -0x40(%ebp),%xmm0