4121b2:	57                   	push   %edi
4121b3:	e8 38 4b 00 00       	call   0x416cf0
4121b8:	83 c4 38             	add    $0x38,%esp
4121bb:	33 c0                	xor    %eax,%eax
4121bd:	85 f6                	test   %esi,%esi
4121bf:	5e                   	pop    %esi
4121c0:	5b                   	pop    %ebx
4121c1:	0f 99 c0             	setns  %al
4121c4:	5f                   	pop    %edi
4121c5:	8b e5                	mov    %ebp,%esp
4121c7:	5d                   	pop    %ebp
4121c8:	c3                   	ret
4121c9:	50                   	push   %eax
4121ca:	57                   	push   %edi
4121cb:	e8 20 4b 00 00       	call   0x416cf0
4121d0:	83 c4 08             	add    $0x8,%esp
4121d3:	5e                   	pop    %esi
4121d4:	5b                   	pop    %ebx
4121d5:	b8 01 00 00 00       	mov    $0x1,%eax
4121da:	5f                   	pop    %edi
4121db:	8b e5                	mov    %ebp,%esp
4121dd:	5d                   	pop    %ebp
4121de:	c3                   	ret
4121df:	8b 4d 14             	mov    0x14(%ebp),%ecx
4121e2:	51                   	push   %ecx
4121e3:	56                   	push   %esi
4121e4:	8d 55 e4             	lea    -0x1c(%ebp),%edx
4121e7:	52                   	push   %edx
4121e8:	8d 45 fc             	lea    -0x4(%ebp),%eax
4121eb:	50                   	push   %eax
4121ec:	57                   	push   %edi
4121ed:	e8 1e fa ff ff       	call   0x411c10
4121f2:	83 c4 14             	add    $0x14,%esp
4121f5:	5e                   	pop    %esi
4121f6:	5b                   	pop    %ebx
4121f7:	5f                   	pop    %edi
4121f8:	8b e5                	mov    %ebp,%esp
4121fa:	5d                   	pop    %ebp
4121fb:	c3                   	ret
4121fc:	5e                   	pop    %esi
4121fd:	5b                   	pop    %ebx
4121fe:	33 c0                	xor    %eax,%eax
412200:	5f                   	pop    %edi
412201:	8b e5                	mov    %ebp,%esp
412203:	5d                   	pop    %ebp
412204:	c3                   	ret
412205:	33 c0                	xor    %eax,%eax
412207:	5f                   	pop    %edi
412208:	8b e5                	mov    %ebp,%esp
41220a:	5d                   	pop    %ebp
41220b:	c3                   	ret
41220c:	aa                   	stos   %al,%es:(%edi)
41220d:	68 70 7c 55 8b       	push   $0x8b557c70
412212:	ec                   	in     (%dx),%al
412213:	8b 45 08             	mov    0x8(%ebp),%eax
412216:	8b 4d 0c             	mov    0xc(%ebp),%ecx
412219:	8b 94 88 44 04 00 00 	mov    0x444(%eax,%ecx,4),%edx
412220:	05 b8 07 00 00       	add    $0x7b8,%eax
412225:	50                   	push   %eax
412226:	8d 45 08             	lea    0x8(%ebp),%eax
412229:	6a 04                	push   $0x4
41222b:	50                   	push   %eax
41222c:	89 55 08             	mov    %edx,0x8(%ebp)
41222f:	e8 ec 60 ff ff       	call   0x408320
412234:	8b 45 08             	mov    0x8(%ebp),%eax
412237:	83 c4 0c             	add    $0xc,%esp
41223a:	5d                   	pop    %ebp
41223b:	c3                   	ret
41223c:	1c 61                	sbb    $0x61,%al
41223e:	d5 a2                	aad    $0xa2
412240:	55                   	push   %ebp
412241:	8b ec                	mov    %esp,%ebp
412243:	8b 45 08             	mov    0x8(%ebp),%eax
412246:	8b 4d 0c             	mov    0xc(%ebp),%ecx
412249:	8b 94 88 90 00 00 00 	mov    0x90(%eax,%ecx,4),%edx
412250:	05 a8 04 00 00       	add    $0x4a8,%eax
412255:	50                   	push   %eax
412256:	8d 45 08             	lea    0x8(%ebp),%eax
412259:	6a 04                	push   $0x4
41225b:	50                   	push   %eax
41225c:	89 55 08             	mov    %edx,0x8(%ebp)
41225f:	e8 bc 60 ff ff       	call   0x408320
412264:	8b 45 08             	mov    0x8(%ebp),%eax
412267:	83 c4 0c             	add    $0xc,%esp
41226a:	5d                   	pop    %ebp
41226b:	c3                   	ret
41226c:	f2 48                	repnz dec %eax
41226e:	24 e7                	and    $0xe7,%al
412270:	55                   	push   %ebp
412271:	8b ec                	mov    %esp,%ebp
412273:	81 ec 04 01 00 00    	sub    $0x104,%esp
412279:	56                   	push   %esi
41227a:	57                   	push   %edi
41227b:	8d 85 fc fe ff ff    	lea    -0x104(%ebp),%eax
412281:	68 04 01 00 00       	push   $0x104
412286:	50                   	push   %eax
412287:	e8 04 61 00 00       	call   0x418390
41228c:	8b 7d 0c             	mov    0xc(%ebp),%edi
41228f:	57                   	push   %edi
412290:	e8 9b 63 00 00       	call   0x418630
412295:	8b f0                	mov    %eax,%esi
412297:	56                   	push   %esi
412298:	8d 8d fc fe ff ff    	lea    -0x104(%ebp),%ecx
41229e:	57                   	push   %edi
41229f:	51                   	push   %ecx
4122a0:	e8 4b 6a 00 00       	call   0x418cf0
4122a5:	8d 95 fc fe ff ff    	lea    -0x104(%ebp),%edx
4122ab:	56                   	push   %esi
4122ac:	52                   	push   %edx
4122ad:	e8 8e 55 ff ff       	call   0x407840
4122b2:	83 c4 20             	add    $0x20,%esp
4122b5:	33 c9                	xor    %ecx,%ecx
4122b7:	3b 45 08             	cmp    0x8(%ebp),%eax
4122ba:	5f                   	pop    %edi
4122bb:	0f 94 c1             	sete   %cl
4122be:	5e                   	pop    %esi
4122bf:	8b c1                	mov    %ecx,%eax
4122c1:	8b e5                	mov    %ebp,%esp
4122c3:	5d                   	pop    %ebp
4122c4:	c3                   	ret
4122c5:	c8 1a f8 cf          	enter  $0xf81a,$0xcf
4122c9:	21 1a                	and    %ebx,(%edx)
4122cb:	15 60 fd 19 9b       	adc    $0x9b19fd60,%eax
4122d0:	55                   	push   %ebp
4122d1:	8b ec                	mov    %esp,%ebp
4122d3:	83 ec 0c             	sub    $0xc,%esp
4122d6:	57                   	push   %edi
4122d7:	8b 7d 0c             	mov    0xc(%ebp),%edi
4122da:	85 ff                	test   %edi,%edi
4122dc:	74 0c                	je     0x4122ea
4122de:	8b 55 10             	mov    0x10(%ebp),%edx
4122e1:	85 d2                	test   %edx,%edx
4122e3:	75 0c                	jne    0x4122f1
4122e5:	39 55 18             	cmp    %edx,0x18(%ebp)
4122e8:	75 07                	jne    0x4122f1
4122ea:	33 c0                	xor    %eax,%eax
4122ec:	5f                   	pop    %edi
4122ed:	8b e5                	mov    %ebp,%esp
4122ef:	5d                   	pop    %ebp
4122f0:	c3                   	ret
4122f1:	8b 47 3c             	mov    0x3c(%edi),%eax
4122f4:	b9 4d 5a 00 00       	mov    $0x5a4d,%ecx
4122f9:	66 39 0f             	cmp    %cx,(%edi)
4122fc:	75 ec                	jne    0x4122ea
4122fe:	81 3c 38 50 45 00 00 	cmpl   $0x4550,(%eax,%edi,1)
412305:	75 e3                	jne    0x4122ea
412307:	8b 4c 38 7c          	mov    0x7c(%eax,%edi,1),%ecx
41230b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
41230e:	85 c9                	test   %ecx,%ecx
412310:	74 d8                	je     0x4122ea
412312:	53                   	push   %ebx
412313:	56                   	push   %esi
412314:	8b 74 38 78          	mov    0x78(%eax,%edi,1),%esi
412318:	8b 4c 3e 24          	mov    0x24(%esi,%edi,1),%ecx
41231c:	8b 44 3e 20          	mov    0x20(%esi,%edi,1),%eax
412320:	03 f7                	add    %edi,%esi
412322:	03 cf                	add    %edi,%ecx
412324:	89 4d f8             	mov    %ecx,-0x8(%ebp)
412327:	8b 4e 1c             	mov    0x1c(%esi),%ecx
41232a:	03 c7                	add    %edi,%eax
41232c:	03 cf                	add    %edi,%ecx
41232e:	83 7d 18 00          	cmpl   $0x0,0x18(%ebp)
412332:	89 45 0c             	mov    %eax,0xc(%ebp)
412335:	89 4d f4             	mov    %ecx,-0xc(%ebp)
412338:	74 64                	je     0x41239e
41233a:	33 db                	xor    %ebx,%ebx
41233c:	39 5e 18             	cmp    %ebx,0x18(%esi)
41233f:	77 12                	ja     0x412353
412341:	33 c0                	xor    %eax,%eax
412343:	5e                   	pop    %esi
412344:	5b                   	pop    %ebx
412345:	5f                   	pop    %edi
412346:	8b e5                	mov    %ebp,%esp
412348:	5d                   	pop    %ebp
412349:	c3                   	ret
41234a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
412350:	8b 45 0c             	mov    0xc(%ebp),%eax
412353:	8b 14 98             	mov    (%eax,%ebx,4),%edx
412356:	8b 45 18             	mov    0x18(%ebp),%eax
412359:	03 d7                	add    %edi,%edx
41235b:	52                   	push   %edx
41235c:	50                   	push   %eax
41235d:	e8 0e ff ff ff       	call   0x412270
412362:	83 c4 08             	add    $0x8,%esp
412365:	85 c0                	test   %eax,%eax
412367:	75 0d                	jne    0x412376
412369:	43                   	inc    %ebx
41236a:	3b 5e 18             	cmp    0x18(%esi),%ebx
41236d:	72 e1                	jb     0x412350
41236f:	5e                   	pop    %esi
412370:	5b                   	pop    %ebx
412371:	5f                   	pop    %edi
412372:	8b e5                	mov    %ebp,%esp
412374:	5d                   	pop    %ebp
412375:	c3                   	ret
412376:	8b 4d f8             	mov    -0x8(%ebp),%ecx
412379:	0f b7 14 59          	movzwl (%ecx,%ebx,2),%edx
41237d:	8b 45 f4             	mov    -0xc(%ebp),%eax
412380:	8b 04 90             	mov    (%eax,%edx,4),%eax
412383:	03 c7                	add    %edi,%eax
412385:	3b c6                	cmp    %esi,%eax
412387:	76 ba                	jbe    0x412343
412389:	03 75 fc             	add    -0x4(%ebp),%esi
41238c:	3b c6                	cmp    %esi,%eax
41238e:	73 b3                	jae    0x412343
412390:	8b 55 0c             	mov    0xc(%ebp),%edx
412393:	8b 0c 9a             	mov    (%edx,%ebx,4),%ecx
412396:	03 cf                	add    %edi,%ecx
412398:	51                   	push   %ecx
412399:	e9 8f 00 00 00       	jmp    0x41242d
41239e:	8b da                	mov    %edx,%ebx
4123a0:	c1 eb 10             	shr    $0x10,%ebx
4123a3:	85 db                	test   %ebx,%ebx
4123a5:	74 57                	je     0x4123fe
4123a7:	33 db                	xor    %ebx,%ebx
4123a9:	39 5e 18             	cmp    %ebx,0x18(%esi)
4123ac:	76 93                	jbe    0x412341
4123ae:	eb 06                	jmp    0x4123b6
4123b0:	8b 45 0c             	mov    0xc(%ebp),%eax
4123b3:	8b 55 10             	mov    0x10(%ebp),%edx
4123b6:	8b 0c 98             	mov    (%eax,%ebx,4),%ecx
4123b9:	03 cf                	add    %edi,%ecx
4123bb:	51                   	push   %ecx
4123bc:	52                   	push   %edx
4123bd:	e8 ae 6e 00 00       	call   0x419270
4123c2:	83 c4 08             	add    $0x8,%esp
4123c5:	85 c0                	test   %eax,%eax
4123c7:	75 0d                	jne    0x4123d6
4123c9:	43                   	inc    %ebx
4123ca:	3b 5e 18             	cmp    0x18(%esi),%ebx
4123cd:	72 e1                	jb     0x4123b0
4123cf:	5e                   	pop    %esi
4123d0:	5b                   	pop    %ebx
4123d1:	5f                   	pop    %edi
4123d2:	8b e5                	mov    %ebp,%esp
4123d4:	5d                   	pop    %ebp
4123d5:	c3                   	ret
4123d6:	8b 55 f8             	mov    -0x8(%ebp),%edx
4123d9:	0f b7 04 5a          	movzwl (%edx,%ebx,2),%eax
4123dd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4123e0:	8b 04 81             	mov    (%ecx,%eax,4),%eax
4123e3:	03 c7                	add    %edi,%eax
4123e5:	3b c6                	cmp    %esi,%eax
4123e7:	0f 86 56 ff ff ff    	jbe    0x412343
4123ed:	03 75 fc             	add    -0x4(%ebp),%esi
4123f0:	3b c6                	cmp    %esi,%eax
4123f2:	0f 83 4b ff ff ff    	jae    0x412343
4123f8:	8b 4d 10             	mov    0x10(%ebp),%ecx
4123fb:	51                   	push   %ecx
4123fc:	eb 2f                	jmp    0x41242d
4123fe:	3b 56 14             	cmp    0x14(%esi),%edx
412401:	0f 83 3a ff ff ff    	jae    0x412341
412407:	85 d2                	test   %edx,%edx
412409:	0f 84 32 ff ff ff    	je     0x412341
41240f:	8b c2                	mov    %edx,%eax
412411:	2b 46 10             	sub    0x10(%esi),%eax
412414:	8b 04 81             	mov    (%ecx,%eax,4),%eax
412417:	03 c7                	add    %edi,%eax
412419:	3b c6                	cmp    %esi,%eax
41241b:	0f 86 22 ff ff ff    	jbe    0x412343
412421:	03 75 fc             	add    -0x4(%ebp),%esi
412424:	3b c6                	cmp    %esi,%eax
412426:	0f 83 17 ff ff ff    	jae    0x412343
41242c:	52                   	push   %edx
41242d:	8b 55 14             	mov    0x14(%ebp),%edx
412430:	57                   	push   %edi
412431:	52                   	push   %edx
412432:	50                   	push   %eax
412433:	8b 45 08             	mov    0x8(%ebp),%eax
412436:	50                   	push   %eax
412437:	e8 14 03 00 00       	call   0x412750
41243c:	83 c4 14             	add    $0x14,%esp
41243f:	5e                   	pop    %esi
412440:	5b                   	pop    %ebx
412441:	5f                   	pop    %edi
412442:	8b e5                	mov    %ebp,%esp
412444:	5d                   	pop    %ebp
412445:	c3                   	ret
412446:	84 ae f5 80 ae e7    	test   %ch,-0x18517f0b(%esi)
41244c:	60                   	pusha
41244d:	3c c0                	cmp    $0xc0,%al
41244f:	16                   	push   %ss
412450:	55                   	push   %ebp
412451:	8b ec                	mov    %esp,%ebp
412453:	81 ec 2c 03 00 00    	sub    $0x32c,%esp
412459:	53                   	push   %ebx
41245a:	57                   	push   %edi
41245b:	68 03 01 00 00       	push   $0x103
412460:	8d 85 dd fe ff ff    	lea    -0x123(%ebp),%eax
412466:	6a 00                	push   $0x0
412468:	50                   	push   %eax
412469:	c6 85 dc fe ff ff 00 	movb   $0x0,-0x124(%ebp)
412470:	e8 6b 5f 00 00       	call   0x4183e0
412475:	8b 5d 0c             	mov    0xc(%ebp),%ebx
412478:	6a 2e                	push   $0x2e
41247a:	53                   	push   %ebx
41247b:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
412482:	e8 99 63 00 00       	call   0x418820
412487:	2b c3                	sub    %ebx,%eax
412489:	0f b7 f8             	movzwl %ax,%edi
41248c:	57                   	push   %edi
41248d:	8d 8d dc fe ff ff    	lea    -0x124(%ebp),%ecx
412493:	53                   	push   %ebx
412494:	51                   	push   %ecx
412495:	e8 c6 5e 00 00       	call   0x418360
41249a:	8d 85 dc fe ff ff    	lea    -0x124(%ebp),%eax
4124a0:	50                   	push   %eax
4124a1:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4124a4:	8d 95 d4 fc ff ff    	lea    -0x32c(%ebp),%edx
4124aa:	68 04 01 00 00       	push   $0x104
4124af:	51                   	push   %ecx
4124b0:	c6 84 3d dc fe ff ff 	movb   $0x0,-0x124(%ebp,%edi,1)
4124b7:	00
4124b8:	89 55 e8             	mov    %edx,-0x18(%ebp)
4124bb:	e8 10 6d 00 00       	call   0x4191d0
4124c0:	8b 55 e8             	mov    -0x18(%ebp),%edx
4124c3:	52                   	push   %edx
4124c4:	e8 27 71 00 00       	call   0x4195f0
4124c9:	83 c4 30             	add    $0x30,%esp
4124cc:	85 c0                	test   %eax,%eax
4124ce:	74 1a                	je     0x4124ea
4124d0:	8b 45 10             	mov    0x10(%ebp),%eax
4124d3:	50                   	push   %eax
4124d4:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4124d7:	51                   	push   %ecx
4124d8:	e8 93 73 00 00       	call   0x419870
4124dd:	83 c4 08             	add    $0x8,%esp
4124e0:	85 c0                	test   %eax,%eax
4124e2:	75 06                	jne    0x4124ea
4124e4:	5f                   	pop    %edi
4124e5:	5b                   	pop    %ebx
4124e6:	8b e5                	mov    %ebp,%esp
4124e8:	5d                   	pop    %ebp
4124e9:	c3                   	ret
4124ea:	56                   	push   %esi
4124eb:	8d 55 e4             	lea    -0x1c(%ebp),%edx
4124ee:	6a 03                	push   $0x3
4124f0:	52                   	push   %edx
4124f1:	e8 aa 5f ff ff       	call   0x4084a0
4124f6:	8b 45 e8             	mov    -0x18(%ebp),%eax
4124f9:	50                   	push   %eax
4124fa:	8d 8d dc fe ff ff    	lea    -0x124(%ebp),%ecx
412500:	51                   	push   %ecx
412501:	e8 fa 64 00 00       	call   0x418a00
412506:	8b 45 08             	mov    0x8(%ebp),%eax
412509:	8d 95 dc fe ff ff    	lea    -0x124(%ebp),%edx
41250f:	52                   	push   %edx
412510:	50                   	push   %eax
412511:	e8 0a 5f ff ff       	call   0x408420
412516:	8b 4d e8             	mov    -0x18(%ebp),%ecx