435f8e:	83 e8 01             	sub    $0x1,%eax
435f91:	75 56                	jne    0x435fe9
435f93:	68 c8 38 44 00       	push   $0x4438c8
435f98:	eb 0c                	jmp    0x435fa6
435f9a:	68 c0 38 44 00       	push   $0x4438c0
435f9f:	eb 05                	jmp    0x435fa6
435fa1:	68 b8 38 44 00       	push   $0x4438b8
435fa6:	ff 75 20             	push   0x20(%ebp)
435fa9:	ff b5 a0 f8 ff ff    	push   -0x760(%ebp)
435faf:	e8 85 d9 fe ff       	call   0x423939
435fb4:	83 c4 0c             	add    $0xc,%esp
435fb7:	85 c0                	test   %eax,%eax
435fb9:	0f 85 aa 14 00 00    	jne    0x437469
435fbf:	e9 7e 14 00 00       	jmp    0x437442
435fc4:	68 b0 38 44 00       	push   $0x4438b0
435fc9:	ff 75 20             	push   0x20(%ebp)
435fcc:	ff b5 a0 f8 ff ff    	push   -0x760(%ebp)
435fd2:	e8 62 d9 fe ff       	call   0x423939
435fd7:	83 c4 0c             	add    $0xc,%esp
435fda:	85 c0                	test   %eax,%eax
435fdc:	0f 85 87 14 00 00    	jne    0x437469
435fe2:	33 db                	xor    %ebx,%ebx
435fe4:	e9 59 14 00 00       	jmp    0x437442
435fe9:	8b 45 08             	mov    0x8(%ebp),%eax
435fec:	81 e6 ff ff ff 7f    	and    $0x7fffffff,%esi
435ff2:	6a 00                	push   $0x0
435ff4:	89 45 08             	mov    %eax,0x8(%ebp)
435ff7:	8d 85 6c f8 ff ff    	lea    -0x794(%ebp),%eax
435ffd:	89 75 0c             	mov    %esi,0xc(%ebp)
436000:	be 1f 00 08 00       	mov    $0x8001f,%esi
436005:	6a 00                	push   $0x0
436007:	50                   	push   %eax
436008:	89 b5 70 f8 ff ff    	mov    %esi,-0x790(%ebp)
43600e:	e8 3d 40 ff ff       	call   0x42a050
436013:	ff b5 70 f8 ff ff    	push   -0x790(%ebp)
436019:	8d 85 88 f8 ff ff    	lea    -0x778(%ebp),%eax
43601f:	56                   	push   %esi
436020:	50                   	push   %eax
436021:	e8 2a 40 ff ff       	call   0x42a050
436026:	dd 45 08             	fldl   0x8(%ebp)
436029:	83 c4 18             	add    $0x18,%esp
43602c:	8b 45 10             	mov    0x10(%ebp),%eax
43602f:	83 a5 90 f8 ff ff 00 	andl   $0x0,-0x770(%ebp)
436036:	40                   	inc    %eax
436037:	dd 95 84 f8 ff ff    	fstl   -0x77c(%ebp)
43603d:	8b b5 88 f8 ff ff    	mov    -0x778(%ebp),%esi
436043:	8b ce                	mov    %esi,%ecx
436045:	89 85 78 f8 ff ff    	mov    %eax,-0x788(%ebp)
43604b:	c1 e9 14             	shr    $0x14,%ecx
43604e:	8b c1                	mov    %ecx,%eax
436050:	25 ff 07 00 00       	and    $0x7ff,%eax
436055:	83 c8 00             	or     $0x0,%eax
436058:	75 0a                	jne    0x436064
43605a:	33 d2                	xor    %edx,%edx
43605c:	89 9d b0 f8 ff ff    	mov    %ebx,-0x750(%ebp)
436062:	eb 0d                	jmp    0x436071
436064:	33 c0                	xor    %eax,%eax
436066:	ba 00 00 10 00       	mov    $0x100000,%edx
43606b:	21 85 b0 f8 ff ff    	and    %eax,-0x750(%ebp)
436071:	8b bd 84 f8 ff ff    	mov    -0x77c(%ebp),%edi
436077:	81 e6 ff ff 0f 00    	and    $0xfffff,%esi
43607d:	03 f8                	add    %eax,%edi
43607f:	8b 85 b0 f8 ff ff    	mov    -0x750(%ebp),%eax
436085:	89 bd 90 f8 ff ff    	mov    %edi,-0x770(%ebp)
43608b:	13 f2                	adc    %edx,%esi
43608d:	81 e1 ff 07 00 00    	and    $0x7ff,%ecx
436093:	03 c1                	add    %ecx,%eax
436095:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
43609b:	e8 20 34 00 00       	call   0x4394c0
4360a0:	51                   	push   %ecx
4360a1:	51                   	push   %ecx
4360a2:	dd 1c 24             	fstpl  (%esp)
4360a5:	e8 26 35 00 00       	call   0x4395d0
4360aa:	59                   	pop    %ecx
4360ab:	59                   	pop    %ecx
4360ac:	e8 3f 43 00 00       	call   0x43a3f0
4360b1:	89 85 7c f8 ff ff    	mov    %eax,-0x784(%ebp)
4360b7:	6a 20                	push   $0x20
4360b9:	5f                   	pop    %edi
4360ba:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
4360bf:	74 07                	je     0x4360c8
4360c1:	3d 00 00 00 80       	cmp    $0x80000000,%eax
4360c6:	75 07                	jne    0x4360cf
4360c8:	83 a5 7c f8 ff ff 00 	andl   $0x0,-0x784(%ebp)
4360cf:	8b 95 b4 f8 ff ff    	mov    -0x74c(%ebp),%edx
4360d5:	33 c9                	xor    %ecx,%ecx
4360d7:	8b 85 90 f8 ff ff    	mov    -0x770(%ebp),%eax
4360dd:	85 f6                	test   %esi,%esi
4360df:	89 85 30 fe ff ff    	mov    %eax,-0x1d0(%ebp)
4360e5:	0f 95 c1             	setne  %cl
4360e8:	89 b5 34 fe ff ff    	mov    %esi,-0x1cc(%ebp)
4360ee:	41                   	inc    %ecx
4360ef:	89 8d b0 f8 ff ff    	mov    %ecx,-0x750(%ebp)
4360f5:	89 8d 2c fe ff ff    	mov    %ecx,-0x1d4(%ebp)
4360fb:	81 fa 33 04 00 00    	cmp    $0x433,%edx
436101:	0f 82 99 03 00 00    	jb     0x4364a0
436107:	83 a5 90 fa ff ff 00 	andl   $0x0,-0x570(%ebp)
43610e:	c7 85 94 fa ff ff 00 	movl   $0x100000,-0x56c(%ebp)
436115:	00 10 00
436118:	c7 85 8c fa ff ff 02 	movl   $0x2,-0x574(%ebp)
43611f:	00 00 00
436122:	85 f6                	test   %esi,%esi
436124:	0f 84 de 01 00 00    	je     0x436308
43612a:	33 c9                	xor    %ecx,%ecx
43612c:	8b 84 0d 90 fa ff ff 	mov    -0x570(%ebp,%ecx,1),%eax
436133:	3b 84 0d 30 fe ff ff 	cmp    -0x1d0(%ebp,%ecx,1),%eax
43613a:	0f 85 c8 01 00 00    	jne    0x436308
436140:	83 c1 04             	add    $0x4,%ecx
436143:	83 f9 08             	cmp    $0x8,%ecx
436146:	75 e4                	jne    0x43612c
436148:	8d 8a cf fb ff ff    	lea    -0x431(%edx),%ecx
43614e:	8b f7                	mov    %edi,%esi
436150:	8b c1                	mov    %ecx,%eax
436152:	33 d2                	xor    %edx,%edx
436154:	83 e1 1f             	and    $0x1f,%ecx
436157:	c1 e8 05             	shr    $0x5,%eax
43615a:	2b f1                	sub    %ecx,%esi
43615c:	89 85 9c f8 ff ff    	mov    %eax,-0x764(%ebp)
436162:	89 8d a8 f8 ff ff    	mov    %ecx,-0x758(%ebp)
436168:	8b c3                	mov    %ebx,%eax
43616a:	8b ce                	mov    %esi,%ecx
43616c:	89 b5 ac f8 ff ff    	mov    %esi,-0x754(%ebp)
436172:	e8 c9 40 00 00       	call   0x43a240
436177:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
43617d:	48                   	dec    %eax
43617e:	83 a5 88 f8 ff ff 00 	andl   $0x0,-0x778(%ebp)
436185:	89 85 94 f8 ff ff    	mov    %eax,-0x76c(%ebp)
43618b:	f7 d0                	not    %eax
43618d:	89 85 90 f8 ff ff    	mov    %eax,-0x770(%ebp)
436193:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
43619a:	0f bd c1             	bsr    %ecx,%eax
43619d:	74 09                	je     0x4361a8
43619f:	40                   	inc    %eax
4361a0:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
4361a6:	eb 07                	jmp    0x4361af
4361a8:	83 a5 b0 f8 ff ff 00 	andl   $0x0,-0x750(%ebp)
4361af:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
4361b5:	be cc 01 00 00       	mov    $0x1cc,%esi
4361ba:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
4361bd:	83 f8 73             	cmp    $0x73,%eax
4361c0:	76 2b                	jbe    0x4361ed
4361c2:	33 c0                	xor    %eax,%eax
4361c4:	50                   	push   %eax
4361c5:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
4361cb:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4361d1:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4361d7:	50                   	push   %eax
4361d8:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4361de:	56                   	push   %esi
4361df:	50                   	push   %eax
4361e0:	e8 46 e1 fe ff       	call   0x42432b
4361e5:	83 c4 10             	add    $0x10,%esp
4361e8:	e9 e2 00 00 00       	jmp    0x4362cf
4361ed:	2b bd b0 f8 ff ff    	sub    -0x750(%ebp),%edi
4361f3:	3b bd a8 f8 ff ff    	cmp    -0x758(%ebp),%edi
4361f9:	1b c0                	sbb    %eax,%eax
4361fb:	f7 d8                	neg    %eax
4361fd:	03 c2                	add    %edx,%eax
4361ff:	03 c1                	add    %ecx,%eax
436201:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
436207:	83 f8 73             	cmp    $0x73,%eax
43620a:	77 b6                	ja     0x4361c2
43620c:	8d 79 ff             	lea    -0x1(%ecx),%edi
43620f:	48                   	dec    %eax
436210:	89 bd 80 f8 ff ff    	mov    %edi,-0x780(%ebp)
436216:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
43621c:	3b c7                	cmp    %edi,%eax
43621e:	0f 84 91 00 00 00    	je     0x4362b5
436224:	8b f8                	mov    %eax,%edi
436226:	2b f9                	sub    %ecx,%edi
436228:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
43622e:	8d 0c b9             	lea    (%ecx,%edi,4),%ecx
436231:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
436237:	3b fa                	cmp    %edx,%edi
436239:	73 05                	jae    0x436240
43623b:	8b 41 04             	mov    0x4(%ecx),%eax
43623e:	eb 02                	jmp    0x436242
436240:	33 c0                	xor    %eax,%eax
436242:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
436248:	8d 47 ff             	lea    -0x1(%edi),%eax
43624b:	3b c2                	cmp    %edx,%eax
43624d:	73 04                	jae    0x436253
43624f:	8b 01                	mov    (%ecx),%eax
436251:	eb 02                	jmp    0x436255
436253:	33 c0                	xor    %eax,%eax
436255:	23 85 90 f8 ff ff    	and    -0x770(%ebp),%eax
43625b:	8b 8d ac f8 ff ff    	mov    -0x754(%ebp),%ecx
436261:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
436267:	23 95 94 f8 ff ff    	and    -0x76c(%ebp),%edx
43626d:	d3 e8                	shr    %cl,%eax
43626f:	8b 8d a8 f8 ff ff    	mov    -0x758(%ebp),%ecx
436275:	d3 e2                	shl    %cl,%edx
436277:	8b 8d b4 f8 ff ff    	mov    -0x74c(%ebp),%ecx
43627d:	0b c2                	or     %edx,%eax
43627f:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
436286:	8b c1                	mov    %ecx,%eax
436288:	8b 8d 98 f8 ff ff    	mov    -0x768(%ebp),%ecx
43628e:	48                   	dec    %eax
43628f:	83 e9 04             	sub    $0x4,%ecx
436292:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
436298:	4f                   	dec    %edi
436299:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
43629f:	3b 85 80 f8 ff ff    	cmp    -0x780(%ebp),%eax
4362a5:	74 08                	je     0x4362af
4362a7:	8b 95 2c fe ff ff    	mov    -0x1d4(%ebp),%edx
4362ad:	eb 88                	jmp    0x436237
4362af:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
4362b5:	85 c9                	test   %ecx,%ecx
4362b7:	74 0a                	je     0x4362c3
4362b9:	33 c0                	xor    %eax,%eax
4362bb:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
4362c1:	f3 ab                	rep stos %eax,%es:(%edi)
4362c3:	8b 85 b8 f8 ff ff    	mov    -0x748(%ebp),%eax
4362c9:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4362cf:	6a 04                	push   $0x4
4362d1:	58                   	pop    %eax
4362d2:	89 85 90 fa ff ff    	mov    %eax,-0x570(%ebp)
4362d8:	50                   	push   %eax
4362d9:	83 a5 94 fa ff ff 00 	andl   $0x0,-0x56c(%ebp)
4362e0:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
4362e6:	50                   	push   %eax
4362e7:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
4362ed:	89 9d 5c fc ff ff    	mov    %ebx,-0x3a4(%ebp)
4362f3:	56                   	push   %esi
4362f4:	50                   	push   %eax
4362f5:	89 9d 8c fa ff ff    	mov    %ebx,-0x574(%ebp)
4362fb:	e8 2b e0 fe ff       	call   0x42432b
436300:	83 c4 10             	add    $0x10,%esp
436303:	e9 ce 03 00 00       	jmp    0x4366d6
436308:	8d 8a ce fb ff ff    	lea    -0x432(%edx),%ecx
43630e:	8b f7                	mov    %edi,%esi
436310:	8b c1                	mov    %ecx,%eax
436312:	33 d2                	xor    %edx,%edx
436314:	83 e1 1f             	and    $0x1f,%ecx
436317:	c1 e8 05             	shr    $0x5,%eax
43631a:	2b f1                	sub    %ecx,%esi
43631c:	89 85 9c f8 ff ff    	mov    %eax,-0x764(%ebp)
436322:	89 8d a8 f8 ff ff    	mov    %ecx,-0x758(%ebp)
436328:	8b c3                	mov    %ebx,%eax
43632a:	8b ce                	mov    %esi,%ecx
43632c:	89 b5 ac f8 ff ff    	mov    %esi,-0x754(%ebp)
436332:	e8 09 3f 00 00       	call   0x43a240
436337:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
43633d:	48                   	dec    %eax
43633e:	83 a5 88 f8 ff ff 00 	andl   $0x0,-0x778(%ebp)
436345:	89 85 94 f8 ff ff    	mov    %eax,-0x76c(%ebp)
43634b:	f7 d0                	not    %eax
43634d:	89 85 90 f8 ff ff    	mov    %eax,-0x770(%ebp)
436353:	8b 8c 95 2c fe ff ff 	mov    -0x1d4(%ebp,%edx,4),%ecx
43635a:	0f bd c1             	bsr    %ecx,%eax
43635d:	74 09                	je     0x436368
43635f:	40                   	inc    %eax
436360:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
436366:	eb 07                	jmp    0x43636f
436368:	83 a5 b0 f8 ff ff 00 	andl   $0x0,-0x750(%ebp)
43636f:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
436375:	be cc 01 00 00       	mov    $0x1cc,%esi
43637a:	8d 04 0a             	lea    (%edx,%ecx,1),%eax
43637d:	83 f8 73             	cmp    $0x73,%eax
436380:	76 2b                	jbe    0x4363ad
436382:	33 c0                	xor    %eax,%eax
436384:	50                   	push   %eax
436385:	89 85 8c fa ff ff    	mov    %eax,-0x574(%ebp)
43638b:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
436391:	8d 85 90 fa ff ff    	lea    -0x570(%ebp),%eax
436397:	50                   	push   %eax
436398:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
43639e:	56                   	push   %esi
43639f:	50                   	push   %eax
4363a0:	e8 86 df fe ff       	call   0x42432b
4363a5:	83 c4 10             	add    $0x10,%esp
4363a8:	e9 e2 00 00 00       	jmp    0x43648f
4363ad:	2b bd b0 f8 ff ff    	sub    -0x750(%ebp),%edi
4363b3:	3b bd a8 f8 ff ff    	cmp    -0x758(%ebp),%edi
4363b9:	1b c0                	sbb    %eax,%eax
4363bb:	f7 d8                	neg    %eax
4363bd:	03 c2                	add    %edx,%eax
4363bf:	03 c1                	add    %ecx,%eax
4363c1:	89 85 b8 f8 ff ff    	mov    %eax,-0x748(%ebp)
4363c7:	83 f8 73             	cmp    $0x73,%eax
4363ca:	77 b6                	ja     0x436382
4363cc:	8d 79 ff             	lea    -0x1(%ecx),%edi
4363cf:	48                   	dec    %eax
4363d0:	89 bd 80 f8 ff ff    	mov    %edi,-0x780(%ebp)
4363d6:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
4363dc:	3b c7                	cmp    %edi,%eax
4363de:	0f 84 91 00 00 00    	je     0x436475
4363e4:	8b f8                	mov    %eax,%edi
4363e6:	2b f9                	sub    %ecx,%edi
4363e8:	8d 8d 2c fe ff ff    	lea    -0x1d4(%ebp),%ecx
4363ee:	8d 0c b9             	lea    (%ecx,%edi,4),%ecx
4363f1:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
4363f7:	3b fa                	cmp    %edx,%edi
4363f9:	73 05                	jae    0x436400
4363fb:	8b 41 04             	mov    0x4(%ecx),%eax
4363fe:	eb 02                	jmp    0x436402
436400:	33 c0                	xor    %eax,%eax
436402:	89 85 b0 f8 ff ff    	mov    %eax,-0x750(%ebp)
436408:	8d 47 ff             	lea    -0x1(%edi),%eax
43640b:	3b c2                	cmp    %edx,%eax
43640d:	73 04                	jae    0x436413
43640f:	8b 01                	mov    (%ecx),%eax
436411:	eb 02                	jmp    0x436415
436413:	33 c0                	xor    %eax,%eax
436415:	23 85 90 f8 ff ff    	and    -0x770(%ebp),%eax
43641b:	8b 8d ac f8 ff ff    	mov    -0x754(%ebp),%ecx
436421:	8b 95 b0 f8 ff ff    	mov    -0x750(%ebp),%edx
436427:	23 95 94 f8 ff ff    	and    -0x76c(%ebp),%edx
43642d:	d3 e8                	shr    %cl,%eax
43642f:	8b 8d a8 f8 ff ff    	mov    -0x758(%ebp),%ecx
436435:	d3 e2                	shl    %cl,%edx
436437:	8b 8d b4 f8 ff ff    	mov    -0x74c(%ebp),%ecx
43643d:	0b c2                	or     %edx,%eax
43643f:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
436446:	8b c1                	mov    %ecx,%eax
436448:	8b 8d 98 f8 ff ff    	mov    -0x768(%ebp),%ecx
43644e:	48                   	dec    %eax
43644f:	83 e9 04             	sub    $0x4,%ecx
436452:	89 85 b4 f8 ff ff    	mov    %eax,-0x74c(%ebp)
436458:	4f                   	dec    %edi
436459:	89 8d 98 f8 ff ff    	mov    %ecx,-0x768(%ebp)
43645f:	3b 85 80 f8 ff ff    	cmp    -0x780(%ebp),%eax
436465:	74 08                	je     0x43646f
436467:	8b 95 2c fe ff ff    	mov    -0x1d4(%ebp),%edx
43646d:	eb 88                	jmp    0x4363f7
43646f:	8b 8d 9c f8 ff ff    	mov    -0x764(%ebp),%ecx
436475:	85 c9                	test   %ecx,%ecx
436477:	74 0a                	je     0x436483
436479:	33 c0                	xor    %eax,%eax
43647b:	8d bd 30 fe ff ff    	lea    -0x1d0(%ebp),%edi
436481:	f3 ab                	rep stos %eax,%es:(%edi)
436483:	8b 85 b8 f8 ff ff    	mov    -0x748(%ebp),%eax
436489:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
43648f:	c7 85 90 fa ff ff 02 	movl   $0x2,-0x570(%ebp)
436496:	00 00 00
436499:	6a 04                	push   $0x4
43649b:	e9 39 fe ff ff       	jmp    0x4362d9
4364a0:	83 fa 35             	cmp    $0x35,%edx
4364a3:	0f 84 16 01 00 00    	je     0x4365bf
4364a9:	83 a5 90 fa ff ff 00 	andl   $0x0,-0x570(%ebp)
4364b0:	c7 85 94 fa ff ff 00 	movl   $0x100000,-0x56c(%ebp)
4364b7:	00 10 00
4364ba:	c7 85 8c fa ff ff 02 	movl   $0x2,-0x574(%ebp)
4364c1:	00 00 00
4364c4:	85 f6                	test   %esi,%esi
4364c6:	0f 84 f3 00 00 00    	je     0x4365bf
4364cc:	33 d2                	xor    %edx,%edx
4364ce:	8b 84 15 90 fa ff ff 	mov    -0x570(%ebp,%edx,1),%eax
4364d5:	3b 84 15 30 fe ff ff 	cmp    -0x1d0(%ebp,%edx,1),%eax
4364dc:	0f 85 dd 00 00 00    	jne    0x4365bf