49acf8:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49acfe:	89 8d 40 fe ff ff    	mov    %ecx,-0x1c0(%ebp)
49ad04:	8b 75 08             	mov    0x8(%ebp),%esi
49ad07:	33 ff                	xor    %edi,%edi
49ad09:	8b 45 0c             	mov    0xc(%ebp),%eax
49ad0c:	89 85 44 fe ff ff    	mov    %eax,-0x1bc(%ebp)
49ad12:	39 7e 34             	cmp    %edi,0x34(%esi)
49ad15:	7e 30                	jle    0x49ad47
49ad17:	33 db                	xor    %ebx,%ebx
49ad19:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
49ad20:	8b 40 1c             	mov    0x1c(%eax),%eax
49ad23:	ff 74 b8 04          	push   0x4(%eax,%edi,4)
49ad27:	8b 46 14             	mov    0x14(%esi),%eax
49ad2a:	03 c3                	add    %ebx,%eax
49ad2c:	50                   	push   %eax
49ad2d:	e8 0e f5 ff ff       	call   0x49a240
49ad32:	8b 8d 40 fe ff ff    	mov    -0x1c0(%ebp),%ecx
49ad38:	47                   	inc    %edi
49ad39:	8b 85 44 fe ff ff    	mov    -0x1bc(%ebp),%eax
49ad3f:	83 c3 58             	add    $0x58,%ebx
49ad42:	3b 7e 34             	cmp    0x34(%esi),%edi
49ad45:	7c d9                	jl     0x49ad20
49ad47:	33 ff                	xor    %edi,%edi
49ad49:	39 7e 40             	cmp    %edi,0x40(%esi)
49ad4c:	7e 29                	jle    0x49ad77
49ad4e:	33 db                	xor    %ebx,%ebx
49ad50:	8b 40 2c             	mov    0x2c(%eax),%eax
49ad53:	ff 74 b8 04          	push   0x4(%eax,%edi,4)
49ad57:	8b 46 1c             	mov    0x1c(%esi),%eax
49ad5a:	03 c3                	add    %ebx,%eax
49ad5c:	50                   	push   %eax
49ad5d:	e8 6e ff ff ff       	call   0x49acd0
49ad62:	8b 8d 40 fe ff ff    	mov    -0x1c0(%ebp),%ecx
49ad68:	47                   	inc    %edi
49ad69:	8b 85 44 fe ff ff    	mov    -0x1bc(%ebp),%eax
49ad6f:	83 c3 5c             	add    $0x5c,%ebx
49ad72:	3b 7e 40             	cmp    0x40(%esi),%edi
49ad75:	7c d9                	jl     0x49ad50
49ad77:	33 ff                	xor    %edi,%edi
49ad79:	39 7e 44             	cmp    %edi,0x44(%esi)
49ad7c:	7e 29                	jle    0x49ada7
49ad7e:	33 db                	xor    %ebx,%ebx
49ad80:	8b 85 44 fe ff ff    	mov    -0x1bc(%ebp),%eax
49ad86:	8b 8d 40 fe ff ff    	mov    -0x1c0(%ebp),%ecx
49ad8c:	8b 40 3c             	mov    0x3c(%eax),%eax
49ad8f:	ff 74 b8 04          	push   0x4(%eax,%edi,4)
49ad93:	8b 46 20             	mov    0x20(%esi),%eax
49ad96:	03 c3                	add    %ebx,%eax
49ad98:	50                   	push   %eax
49ad99:	e8 42 ef ff ff       	call   0x499ce0
49ad9e:	47                   	inc    %edi
49ad9f:	83 c3 30             	add    $0x30,%ebx
49ada2:	3b 7e 44             	cmp    0x44(%esi),%edi
49ada5:	7c d9                	jl     0x49ad80
49ada7:	33 ff                	xor    %edi,%edi
49ada9:	39 7e 4c             	cmp    %edi,0x4c(%esi)
49adac:	7e 29                	jle    0x49add7
49adae:	33 db                	xor    %ebx,%ebx
49adb0:	8b 85 44 fe ff ff    	mov    -0x1bc(%ebp),%eax
49adb6:	8b 8d 40 fe ff ff    	mov    -0x1c0(%ebp),%ecx
49adbc:	8b 40 5c             	mov    0x5c(%eax),%eax
49adbf:	ff 74 b8 04          	push   0x4(%eax,%edi,4)
49adc3:	8b 46 28             	mov    0x28(%esi),%eax
49adc6:	03 c3                	add    %ebx,%eax
49adc8:	50                   	push   %eax
49adc9:	e8 72 f4 ff ff       	call   0x49a240
49adce:	47                   	inc    %edi
49adcf:	83 c3 58             	add    $0x58,%ebx
49add2:	3b 7e 4c             	cmp    0x4c(%esi),%edi
49add5:	7c d9                	jl     0x49adb0
49add7:	8b 46 10             	mov    0x10(%esi),%eax
49adda:	b9 ff ff ff 1f       	mov    $0x1fffffff,%ecx
49addf:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
49ade4:	80 78 2c 00          	cmpb   $0x0,0x2c(%eax)
49ade8:	0f 45 ca             	cmovne %edx,%ecx
49adeb:	33 ff                	xor    %edi,%edi
49aded:	89 8d 3c fe ff ff    	mov    %ecx,-0x1c4(%ebp)
49adf3:	39 7e 48             	cmp    %edi,0x48(%esi)
49adf6:	0f 8e ce 01 00 00    	jle    0x49afca
49adfc:	8b c1                	mov    %ecx,%eax
49adfe:	83 c0 01             	add    $0x1,%eax
49ae01:	89 85 34 fe ff ff    	mov    %eax,-0x1cc(%ebp)
49ae07:	8b c7                	mov    %edi,%eax
49ae09:	13 c7                	adc    %edi,%eax
49ae0b:	33 db                	xor    %ebx,%ebx
49ae0d:	89 85 38 fe ff ff    	mov    %eax,-0x1c8(%ebp)
49ae13:	8b 46 24             	mov    0x24(%esi),%eax
49ae16:	8b 44 18 04          	mov    0x4(%eax,%ebx,1),%eax
49ae1a:	99                   	cltd
49ae1b:	3b 95 38 fe ff ff    	cmp    -0x1c8(%ebp),%edx
49ae21:	0f 8c 96 01 00 00    	jl     0x49afbd
49ae27:	7f 0c                	jg     0x49ae35
49ae29:	3b 85 34 fe ff ff    	cmp    -0x1cc(%ebp),%eax
49ae2f:	0f 86 88 01 00 00    	jbe    0x49afbd
49ae35:	8d 45 b8             	lea    -0x48(%ebp),%eax
49ae38:	50                   	push   %eax
49ae39:	6a 00                	push   $0x0
49ae3b:	51                   	push   %ecx
49ae3c:	e8 ef 49 00 00       	call   0x49f830
49ae41:	8b c8                	mov    %eax,%ecx
49ae43:	83 c4 0c             	add    $0xc,%esp
49ae46:	89 4d b0             	mov    %ecx,-0x50(%ebp)
49ae49:	8d 51 01             	lea    0x1(%ecx),%edx
49ae4c:	0f 1f 40 00          	nopl   0x0(%eax)
49ae50:	8a 01                	mov    (%ecx),%al
49ae52:	41                   	inc    %ecx
49ae53:	84 c0                	test   %al,%al
49ae55:	75 f9                	jne    0x49ae50
49ae57:	8d 45 88             	lea    -0x78(%ebp),%eax
49ae5a:	c7 45 88 00 00 00 00 	movl   $0x0,-0x78(%ebp)
49ae61:	50                   	push   %eax
49ae62:	8d 85 60 ff ff ff    	lea    -0xa0(%ebp),%eax
49ae68:	c7 45 8c ff ff ff ff 	movl   $0xffffffff,-0x74(%ebp)
49ae6f:	50                   	push   %eax
49ae70:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax
49ae76:	c7 85 60 ff ff ff 00 	movl   $0x0,-0xa0(%ebp)
49ae7d:	00 00 00
49ae80:	50                   	push   %eax
49ae81:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
49ae87:	c7 85 64 ff ff ff ff 	movl   $0xffffffff,-0x9c(%ebp)
49ae8e:	ff ff ff
49ae91:	50                   	push   %eax
49ae92:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
49ae98:	c7 85 38 ff ff ff 00 	movl   $0x0,-0xc8(%ebp)
49ae9f:	00 00 00
49aea2:	50                   	push   %eax
49aea3:	8d 85 c0 fe ff ff    	lea    -0x140(%ebp),%eax
49aea9:	c7 85 3c ff ff ff ff 	movl   $0xffffffff,-0xc4(%ebp)
49aeb0:	ff ff ff
49aeb3:	50                   	push   %eax
49aeb4:	8d 85 98 fe ff ff    	lea    -0x168(%ebp),%eax
49aeba:	c7 85 10 ff ff ff 00 	movl   $0x0,-0xf0(%ebp)
49aec1:	00 00 00
49aec4:	50                   	push   %eax
49aec5:	8d 85 70 fe ff ff    	lea    -0x190(%ebp),%eax
49aecb:	c7 85 14 ff ff ff ff 	movl   $0xffffffff,-0xec(%ebp)
49aed2:	ff ff ff
49aed5:	50                   	push   %eax
49aed6:	8d 85 48 fe ff ff    	lea    -0x1b8(%ebp),%eax
49aedc:	c7 85 e8 fe ff ff 00 	movl   $0x0,-0x118(%ebp)
49aee3:	00 00 00
49aee6:	50                   	push   %eax
49aee7:	8d 45 b0             	lea    -0x50(%ebp),%eax
49aeea:	c7 85 ec fe ff ff ff 	movl   $0xffffffff,-0x114(%ebp)
49aef1:	ff ff ff
49aef4:	50                   	push   %eax
49aef5:	8d 45 d8             	lea    -0x28(%ebp),%eax
49aef8:	c7 85 c0 fe ff ff 00 	movl   $0x0,-0x140(%ebp)
49aeff:	00 00 00
49af02:	2b ca                	sub    %edx,%ecx
49af04:	c7 85 c4 fe ff ff ff 	movl   $0xffffffff,-0x13c(%ebp)
49af0b:	ff ff ff
49af0e:	68 74 95 60 00       	push   $0x609574
49af13:	50                   	push   %eax
49af14:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
49af17:	c7 85 98 fe ff ff 00 	movl   $0x0,-0x168(%ebp)
49af1e:	00 00 00
49af21:	c7 85 9c fe ff ff ff 	movl   $0xffffffff,-0x164(%ebp)
49af28:	ff ff ff
49af2b:	c7 85 70 fe ff ff 00 	movl   $0x0,-0x190(%ebp)
49af32:	00 00 00
49af35:	c7 85 74 fe ff ff ff 	movl   $0xffffffff,-0x18c(%ebp)
49af3c:	ff ff ff
49af3f:	c7 85 48 fe ff ff 00 	movl   $0x0,-0x1b8(%ebp)
49af46:	00 00 00
49af49:	c7 85 4c fe ff ff ff 	movl   $0xffffffff,-0x1b4(%ebp)
49af50:	ff ff ff
49af53:	e8 78 a8 03 00       	call   0x4d57d0
49af58:	83 c4 30             	add    $0x30,%esp
49af5b:	8b 8d 40 fe ff ff    	mov    -0x1c0(%ebp),%ecx
49af61:	50                   	push   %eax
49af62:	8b 85 44 fe ff ff    	mov    -0x1bc(%ebp),%eax
49af68:	6a 01                	push   $0x1
49af6a:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
49af71:	8b 40 4c             	mov    0x4c(%eax),%eax
49af74:	ff 74 b8 04          	push   0x4(%eax,%edi,4)
49af78:	ff 76 04             	push   0x4(%esi)
49af7b:	e8 30 38 fe ff       	call   0x47e7b0
49af80:	8b 55 ec             	mov    -0x14(%ebp),%edx
49af83:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49af8a:	83 fa 10             	cmp    $0x10,%edx
49af8d:	72 28                	jb     0x49afb7
49af8f:	8b 4d d8             	mov    -0x28(%ebp),%ecx
49af92:	42                   	inc    %edx
49af93:	8b c1                	mov    %ecx,%eax
49af95:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
49af9b:	72 10                	jb     0x49afad
49af9d:	8b 49 fc             	mov    -0x4(%ecx),%ecx
49afa0:	83 c2 23             	add    $0x23,%edx
49afa3:	2b c1                	sub    %ecx,%eax
49afa5:	83 c0 fc             	add    $0xfffffffc,%eax
49afa8:	83 f8 1f             	cmp    $0x1f,%eax
49afab:	77 3b                	ja     0x49afe8
49afad:	52                   	push   %edx
49afae:	51                   	push   %ecx
49afaf:	e8 a1 62 13 00       	call   0x5d1255
49afb4:	83 c4 08             	add    $0x8,%esp
49afb7:	8b 8d 3c fe ff ff    	mov    -0x1c4(%ebp),%ecx
49afbd:	47                   	inc    %edi
49afbe:	83 c3 0c             	add    $0xc,%ebx
49afc1:	3b 7e 48             	cmp    0x48(%esi),%edi
49afc4:	0f 8c 49 fe ff ff    	jl     0x49ae13
49afca:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49afcd:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49afd4:	59                   	pop    %ecx
49afd5:	5f                   	pop    %edi
49afd6:	5e                   	pop    %esi
49afd7:	5b                   	pop    %ebx
49afd8:	8b 4d f0             	mov    -0x10(%ebp),%ecx
49afdb:	33 cd                	xor    %ebp,%ecx
49afdd:	e8 44 6a 13 00       	call   0x5d1a26
49afe2:	8b e5                	mov    %ebp,%esp
49afe4:	5d                   	pop    %ebp
49afe5:	c2 08 00             	ret    $0x8
49afe8:	e8 03 b2 13 00       	call   0x5d61f0
49afed:	cc                   	int3
49afee:	cc                   	int3
49afef:	cc                   	int3
49aff0:	55                   	push   %ebp
49aff1:	8b ec                	mov    %esp,%ebp
49aff3:	6a ff                	push   $0xffffffff
49aff5:	68 bd ce 5f 00       	push   $0x5fcebd
49affa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49b000:	50                   	push   %eax
49b001:	83 ec 30             	sub    $0x30,%esp
49b004:	a1 c0 14 69 00       	mov    0x6914c0,%eax
49b009:	33 c5                	xor    %ebp,%eax
49b00b:	89 45 f0             	mov    %eax,-0x10(%ebp)
49b00e:	56                   	push   %esi
49b00f:	57                   	push   %edi
49b010:	50                   	push   %eax
49b011:	8d 45 f4             	lea    -0xc(%ebp),%eax
49b014:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49b01a:	8b d1                	mov    %ecx,%edx
49b01c:	89 55 cc             	mov    %edx,-0x34(%ebp)
49b01f:	8b 75 08             	mov    0x8(%ebp),%esi
49b022:	33 ff                	xor    %edi,%edi
49b024:	8b 45 0c             	mov    0xc(%ebp),%eax
49b027:	89 45 d0             	mov    %eax,-0x30(%ebp)
49b02a:	39 7e 28             	cmp    %edi,0x28(%esi)
49b02d:	7e 2e                	jle    0x49b05d
49b02f:	33 c9                	xor    %ecx,%ecx
49b031:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
49b034:	8b 40 5c             	mov    0x5c(%eax),%eax
49b037:	ff 74 b8 04          	push   0x4(%eax,%edi,4)
49b03b:	8b 46 50             	mov    0x50(%esi),%eax
49b03e:	03 c1                	add    %ecx,%eax
49b040:	8b ca                	mov    %edx,%ecx
49b042:	50                   	push   %eax
49b043:	e8 98 01 00 00       	call   0x49b1e0
49b048:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
49b04b:	47                   	inc    %edi
49b04c:	8b 45 d0             	mov    -0x30(%ebp),%eax
49b04f:	83 c1 58             	add    $0x58,%ecx
49b052:	8b 55 cc             	mov    -0x34(%ebp),%edx
49b055:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
49b058:	3b 7e 28             	cmp    0x28(%esi),%edi
49b05b:	7c d7                	jl     0x49b034
49b05d:	33 ff                	xor    %edi,%edi
49b05f:	39 7e 1c             	cmp    %edi,0x1c(%esi)
49b062:	7e 35                	jle    0x49b099
49b064:	33 c9                	xor    %ecx,%ecx
49b066:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
49b069:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
49b070:	8b 40 2c             	mov    0x2c(%eax),%eax
49b073:	ff 74 b8 04          	push   0x4(%eax,%edi,4)
49b077:	8b 46 44             	mov    0x44(%esi),%eax
49b07a:	03 c1                	add    %ecx,%eax
49b07c:	8b ca                	mov    %edx,%ecx
49b07e:	50                   	push   %eax
49b07f:	e8 4c 04 00 00       	call   0x49b4d0
49b084:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
49b087:	47                   	inc    %edi
49b088:	8b 45 d0             	mov    -0x30(%ebp),%eax
49b08b:	83 c1 5c             	add    $0x5c,%ecx
49b08e:	8b 55 cc             	mov    -0x34(%ebp),%edx
49b091:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
49b094:	3b 7e 1c             	cmp    0x1c(%esi),%edi
49b097:	7c d7                	jl     0x49b070
49b099:	33 c9                	xor    %ecx,%ecx
49b09b:	89 4d c8             	mov    %ecx,-0x38(%ebp)
49b09e:	39 4e 20             	cmp    %ecx,0x20(%esi)
49b0a1:	0f 8e 08 01 00 00    	jle    0x49b1af
49b0a7:	33 d2                	xor    %edx,%edx
49b0a9:	89 55 d4             	mov    %edx,-0x2c(%ebp)
49b0ac:	0f 1f 40 00          	nopl   0x0(%eax)
49b0b0:	8b 45 d0             	mov    -0x30(%ebp),%eax
49b0b3:	8b 40 3c             	mov    0x3c(%eax),%eax
49b0b6:	8b 7c 88 04          	mov    0x4(%eax,%ecx,4),%edi
49b0ba:	8b 4e 48             	mov    0x48(%esi),%ecx
49b0bd:	83 7c 11 18 00       	cmpl   $0x0,0x18(%ecx,%edx,1)
49b0c2:	0f 8e d1 00 00 00    	jle    0x49b199
49b0c8:	8b 44 11 1c          	mov    0x1c(%ecx,%edx,1),%eax
49b0cc:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
49b0d0:	0f 84 c3 00 00 00    	je     0x49b199
49b0d6:	8b 47 1c             	mov    0x1c(%edi),%eax
49b0d9:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
49b0e0:	6a 30                	push   $0x30
49b0e2:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
49b0e9:	8b 78 04             	mov    0x4(%eax),%edi
49b0ec:	8b 44 11 04          	mov    0x4(%ecx,%edx,1),%eax
49b0f0:	89 45 c4             	mov    %eax,-0x3c(%ebp)
49b0f3:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
49b0fa:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
49b0fe:	e8 22 61 13 00       	call   0x5d1225
49b103:	0f 10 05 44 95 60 00 	movups 0x609544,%xmm0
49b10a:	c7 45 e8 2c 00 00 00 	movl   $0x2c,-0x18(%ebp)
49b111:	83 c4 04             	add    $0x4,%esp
49b114:	c7 45 ec 2f 00 00 00 	movl   $0x2f,-0x14(%ebp)
49b11b:	0f 11 00             	movups %xmm0,(%eax)
49b11e:	0f 10 05 54 95 60 00 	movups 0x609554,%xmm0
49b125:	0f 11 40 10          	movups %xmm0,0x10(%eax)
49b129:	f3 0f 7e 05 64 95 60 	movq   0x609564,%xmm0
49b130:	00
49b131:	66 0f d6 40 20       	movq   %xmm0,0x20(%eax)
49b136:	8b 0d 6c 95 60 00    	mov    0x60956c,%ecx
49b13c:	89 48 28             	mov    %ecx,0x28(%eax)
49b13f:	c6 40 2c 00          	movb   $0x0,0x2c(%eax)
49b143:	89 45 d8             	mov    %eax,-0x28(%ebp)
49b146:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49b149:	8d 45 d8             	lea    -0x28(%ebp),%eax
49b14c:	50                   	push   %eax
49b14d:	6a 01                	push   $0x1
49b14f:	57                   	push   %edi
49b150:	ff 75 c4             	push   -0x3c(%ebp)
49b153:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
49b15a:	e8 51 36 fe ff       	call   0x47e7b0
49b15f:	8b 55 ec             	mov    -0x14(%ebp),%edx
49b162:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49b169:	83 fa 10             	cmp    $0x10,%edx
49b16c:	72 28                	jb     0x49b196
49b16e:	8b 4d d8             	mov    -0x28(%ebp),%ecx
49b171:	42                   	inc    %edx
49b172:	8b c1                	mov    %ecx,%eax
49b174:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
49b17a:	72 10                	jb     0x49b18c
49b17c:	8b 49 fc             	mov    -0x4(%ecx),%ecx
49b17f:	83 c2 23             	add    $0x23,%edx
49b182:	2b c1                	sub    %ecx,%eax
49b184:	83 c0 fc             	add    $0xfffffffc,%eax
49b187:	83 f8 1f             	cmp    $0x1f,%eax
49b18a:	77 40                	ja     0x49b1cc
49b18c:	52                   	push   %edx
49b18d:	51                   	push   %ecx
49b18e:	e8 c2 60 13 00       	call   0x5d1255
49b193:	83 c4 08             	add    $0x8,%esp
49b196:	8b 55 d4             	mov    -0x2c(%ebp),%edx
49b199:	8b 4d c8             	mov    -0x38(%ebp),%ecx
49b19c:	83 c2 30             	add    $0x30,%edx
49b19f:	41                   	inc    %ecx