423175:	8d 40 00             	lea    0x0(%eax),%eax
423178:	53                   	push   %ebx
423179:	56                   	push   %esi
42317a:	e8 0d 05 fe ff       	call   0x40368c
42317f:	8b da                	mov    %edx,%ebx
423181:	8b f0                	mov    %eax,%esi
423183:	8d 46 08             	lea    0x8(%esi),%eax
423186:	50                   	push   %eax
423187:	e8 10 31 fe ff       	call   0x40629c
42318c:	84 db                	test   %bl,%bl
42318e:	7e 07                	jle    0x423197
423190:	8b c6                	mov    %esi,%eax
423192:	e8 dd 04 fe ff       	call   0x403674
423197:	5e                   	pop    %esi
423198:	5b                   	pop    %ebx
423199:	c3                   	ret
42319a:	8b c0                	mov    %eax,%eax
42319c:	83 c0 08             	add    $0x8,%eax
42319f:	50                   	push   %eax
4231a0:	e8 ff 30 fe ff       	call   0x4062a4
4231a5:	c3                   	ret
4231a6:	8b c0                	mov    %eax,%eax
4231a8:	83 c0 08             	add    $0x8,%eax
4231ab:	50                   	push   %eax
4231ac:	e8 5b 32 fe ff       	call   0x40640c
4231b1:	c3                   	ret
4231b2:	8b c0                	mov    %eax,%eax
4231b4:	55                   	push   %ebp
4231b5:	8b ec                	mov    %esp,%ebp
4231b7:	83 c4 f8             	add    $0xfffffff8,%esp
4231ba:	53                   	push   %ebx
4231bb:	56                   	push   %esi
4231bc:	8b da                	mov    %edx,%ebx
4231be:	89 45 fc             	mov    %eax,-0x4(%ebp)
4231c1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4231c4:	0f b7 50 20          	movzwl 0x20(%eax),%edx
4231c8:	8b c3                	mov    %ebx,%eax
4231ca:	e8 59 ff ff ff       	call   0x423128
4231cf:	8b f0                	mov    %eax,%esi
4231d1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4231d4:	e8 c3 ff ff ff       	call   0x42319c
4231d9:	33 d2                	xor    %edx,%edx
4231db:	55                   	push   %ebp
4231dc:	68 88 32 42 00       	push   $0x423288
4231e1:	64 ff 32             	push   %fs:(%edx)
4231e4:	64 89 22             	mov    %esp,%fs:(%edx)
4231e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4231ea:	8b 40 04             	mov    0x4(%eax),%eax
4231ed:	89 45 f8             	mov    %eax,-0x8(%ebp)
4231f0:	eb 08                	jmp    0x4231fa
4231f2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4231f5:	8b 00                	mov    (%eax),%eax
4231f7:	89 45 f8             	mov    %eax,-0x8(%ebp)
4231fa:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4231fe:	74 21                	je     0x423221
423200:	8b 45 f8             	mov    -0x8(%ebp),%eax
423203:	66 3b 70 0c          	cmp    0xc(%eax),%si
423207:	75 e9                	jne    0x4231f2
423209:	8b 45 fc             	mov    -0x4(%ebp),%eax
42320c:	0f b7 48 20          	movzwl 0x20(%eax),%ecx
423210:	8b d3                	mov    %ebx,%edx
423212:	8b 45 f8             	mov    -0x8(%ebp),%eax
423215:	83 c0 10             	add    $0x10,%eax
423218:	e8 e3 4c fe ff       	call   0x407f00
42321d:	84 c0                	test   %al,%al
42321f:	74 d1                	je     0x4231f2
423221:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
423225:	75 45                	jne    0x42326c
423227:	8b 45 fc             	mov    -0x4(%ebp),%eax
42322a:	0f b7 40 20          	movzwl 0x20(%eax),%eax
42322e:	83 c0 10             	add    $0x10,%eax
423231:	e8 be f4 fd ff       	call   0x4026f4
423236:	89 45 f8             	mov    %eax,-0x8(%ebp)
423239:	8b 45 f8             	mov    -0x8(%ebp),%eax
42323c:	8b 55 fc             	mov    -0x4(%ebp),%edx
42323f:	8b 52 04             	mov    0x4(%edx),%edx
423242:	89 10                	mov    %edx,(%eax)
423244:	33 d2                	xor    %edx,%edx
423246:	89 50 04             	mov    %edx,0x4(%eax)
423249:	8b 13                	mov    (%ebx),%edx
42324b:	89 50 08             	mov    %edx,0x8(%eax)
42324e:	66 89 70 0c          	mov    %si,0xc(%eax)
423252:	8b 55 fc             	mov    -0x4(%ebp),%edx
423255:	0f b7 4a 20          	movzwl 0x20(%edx),%ecx
423259:	8d 50 10             	lea    0x10(%eax),%edx
42325c:	8b c3                	mov    %ebx,%eax
42325e:	e8 8d f6 fd ff       	call   0x4028f0
423263:	8b 45 fc             	mov    -0x4(%ebp),%eax
423266:	8b 55 f8             	mov    -0x8(%ebp),%edx
423269:	89 50 04             	mov    %edx,0x4(%eax)
42326c:	8b 45 f8             	mov    -0x8(%ebp),%eax
42326f:	ff 40 04             	incl   0x4(%eax)
423272:	33 c0                	xor    %eax,%eax
423274:	5a                   	pop    %edx
423275:	59                   	pop    %ecx
423276:	59                   	pop    %ecx
423277:	64 89 10             	mov    %edx,%fs:(%eax)
42327a:	68 8f 32 42 00       	push   $0x42328f
42327f:	8b 45 fc             	mov    -0x4(%ebp),%eax
423282:	e8 21 ff ff ff       	call   0x4231a8
423287:	c3                   	ret
423288:	e9 c7 07 fe ff       	jmp    0x403a54
42328d:	eb f0                	jmp    0x42327f
42328f:	8b 45 f8             	mov    -0x8(%ebp),%eax
423292:	5e                   	pop    %esi
423293:	5b                   	pop    %ebx
423294:	59                   	pop    %ecx
423295:	59                   	pop    %ecx
423296:	5d                   	pop    %ebp
423297:	c3                   	ret
423298:	55                   	push   %ebp
423299:	8b ec                	mov    %esp,%ebp
42329b:	83 c4 f0             	add    $0xfffffff0,%esp
42329e:	89 55 f8             	mov    %edx,-0x8(%ebp)
4232a1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4232a4:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4232a8:	0f 84 96 00 00 00    	je     0x423344
4232ae:	8b 45 f8             	mov    -0x8(%ebp),%eax
4232b1:	89 45 f0             	mov    %eax,-0x10(%ebp)
4232b4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4232b7:	e8 e0 fe ff ff       	call   0x42319c
4232bc:	33 c9                	xor    %ecx,%ecx
4232be:	55                   	push   %ebp
4232bf:	68 1f 33 42 00       	push   $0x42331f
4232c4:	64 ff 31             	push   %fs:(%ecx)
4232c7:	64 89 21             	mov    %esp,%fs:(%ecx)
4232ca:	8b 45 f0             	mov    -0x10(%ebp),%eax
4232cd:	ff 48 04             	decl   0x4(%eax)
4232d0:	8b 45 f0             	mov    -0x10(%ebp),%eax
4232d3:	83 78 04 00          	cmpl   $0x0,0x4(%eax)
4232d7:	0f 94 45 f7          	sete   -0x9(%ebp)
4232db:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
4232df:	74 28                	je     0x423309
4232e1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4232e4:	8b 40 04             	mov    0x4(%eax),%eax
4232e7:	3b 45 f8             	cmp    -0x8(%ebp),%eax
4232ea:	75 0f                	jne    0x4232fb
4232ec:	8b 45 f8             	mov    -0x8(%ebp),%eax
4232ef:	8b 00                	mov    (%eax),%eax
4232f1:	8b 55 fc             	mov    -0x4(%ebp),%edx
4232f4:	89 42 04             	mov    %eax,0x4(%edx)
4232f7:	eb 10                	jmp    0x423309
4232f9:	8b c2                	mov    %edx,%eax
4232fb:	8b 10                	mov    (%eax),%edx
4232fd:	3b 55 f8             	cmp    -0x8(%ebp),%edx
423300:	75 f7                	jne    0x4232f9
423302:	8b 55 f8             	mov    -0x8(%ebp),%edx
423305:	8b 12                	mov    (%edx),%edx
423307:	89 10                	mov    %edx,(%eax)
423309:	33 c0                	xor    %eax,%eax
42330b:	5a                   	pop    %edx
42330c:	59                   	pop    %ecx
42330d:	59                   	pop    %ecx
42330e:	64 89 10             	mov    %edx,%fs:(%eax)
423311:	68 26 33 42 00       	push   $0x423326
423316:	8b 45 fc             	mov    -0x4(%ebp),%eax
423319:	e8 8a fe ff ff       	call   0x4231a8
42331e:	c3                   	ret
42331f:	e9 30 07 fe ff       	jmp    0x403a54
423324:	eb f0                	jmp    0x423316
423326:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
42332a:	74 18                	je     0x423344
42332c:	8b 45 f0             	mov    -0x10(%ebp),%eax
42332f:	8b 40 08             	mov    0x8(%eax),%eax
423332:	85 c0                	test   %eax,%eax
423334:	74 06                	je     0x42333c
423336:	50                   	push   %eax
423337:	e8 00 32 fe ff       	call   0x40653c
42333c:	8b 45 f8             	mov    -0x8(%ebp),%eax
42333f:	e8 d0 f3 fd ff       	call   0x402714
423344:	8b e5                	mov    %ebp,%esp
423346:	5d                   	pop    %ebp
423347:	c3                   	ret
423348:	55                   	push   %ebp
423349:	8b ec                	mov    %esp,%ebp
42334b:	83 c4 f8             	add    $0xfffffff8,%esp
42334e:	53                   	push   %ebx
42334f:	56                   	push   %esi
423350:	57                   	push   %edi
423351:	89 4d f8             	mov    %ecx,-0x8(%ebp)
423354:	8b da                	mov    %edx,%ebx
423356:	89 45 fc             	mov    %eax,-0x4(%ebp)
423359:	8b 45 fc             	mov    -0x4(%ebp),%eax
42335c:	e8 3b fe ff ff       	call   0x42319c
423361:	33 c0                	xor    %eax,%eax
423363:	55                   	push   %ebp
423364:	68 b1 33 42 00       	push   $0x4233b1
423369:	64 ff 30             	push   %fs:(%eax)
42336c:	64 89 20             	mov    %esp,%fs:(%eax)
42336f:	8b 7b 10             	mov    0x10(%ebx),%edi
423372:	8b 55 f8             	mov    -0x8(%ebp),%edx
423375:	8b 45 fc             	mov    -0x4(%ebp),%eax
423378:	e8 37 fe ff ff       	call   0x4231b4
42337d:	8b f0                	mov    %eax,%esi
42337f:	89 73 10             	mov    %esi,0x10(%ebx)
423382:	3b fe                	cmp    %esi,%edi
423384:	74 0b                	je     0x423391
423386:	8b c3                	mov    %ebx,%eax
423388:	66 be fd ff          	mov    $0xfffd,%si
42338c:	e8 2b 01 fe ff       	call   0x4034bc
423391:	8b d7                	mov    %edi,%edx
423393:	8b 45 fc             	mov    -0x4(%ebp),%eax
423396:	e8 fd fe ff ff       	call   0x423298
42339b:	33 c0                	xor    %eax,%eax
42339d:	5a                   	pop    %edx
42339e:	59                   	pop    %ecx
42339f:	59                   	pop    %ecx
4233a0:	64 89 10             	mov    %edx,%fs:(%eax)
4233a3:	68 b8 33 42 00       	push   $0x4233b8
4233a8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4233ab:	e8 f8 fd ff ff       	call   0x4231a8
4233b0:	c3                   	ret
4233b1:	e9 9e 06 fe ff       	jmp    0x403a54
4233b6:	eb f0                	jmp    0x4233a8
4233b8:	5f                   	pop    %edi
4233b9:	5e                   	pop    %esi
4233ba:	5b                   	pop    %ebx
4233bb:	59                   	pop    %ecx
4233bc:	59                   	pop    %ecx
4233bd:	5d                   	pop    %ebp
4233be:	c3                   	ret
4233bf:	90                   	nop
4233c0:	55                   	push   %ebp
4233c1:	8b ec                	mov    %esp,%ebp
4233c3:	51                   	push   %ecx
4233c4:	53                   	push   %ebx
4233c5:	56                   	push   %esi
4233c6:	57                   	push   %edi
4233c7:	8b f9                	mov    %ecx,%edi
4233c9:	8b f2                	mov    %edx,%esi
4233cb:	89 45 fc             	mov    %eax,-0x4(%ebp)
4233ce:	8b 45 fc             	mov    -0x4(%ebp),%eax
4233d1:	e8 c6 fd ff ff       	call   0x42319c
4233d6:	33 c0                	xor    %eax,%eax
4233d8:	55                   	push   %ebp
4233d9:	68 1c 34 42 00       	push   $0x42341c
4233de:	64 ff 30             	push   %fs:(%eax)
4233e1:	64 89 20             	mov    %esp,%fs:(%eax)
4233e4:	8b 5e 10             	mov    0x10(%esi),%ebx
4233e7:	3b fb                	cmp    %ebx,%edi
4233e9:	74 1b                	je     0x423406
4233eb:	ff 47 04             	incl   0x4(%edi)
4233ee:	89 7e 10             	mov    %edi,0x10(%esi)
4233f1:	8b c6                	mov    %esi,%eax
4233f3:	66 be fd ff          	mov    $0xfffd,%si
4233f7:	e8 c0 00 fe ff       	call   0x4034bc
4233fc:	8b d3                	mov    %ebx,%edx
4233fe:	8b 45 fc             	mov    -0x4(%ebp),%eax
423401:	e8 92 fe ff ff       	call   0x423298
423406:	33 c0                	xor    %eax,%eax
423408:	5a                   	pop    %edx
423409:	59                   	pop    %ecx
42340a:	59                   	pop    %ecx
42340b:	64 89 10             	mov    %edx,%fs:(%eax)
42340e:	68 23 34 42 00       	push   $0x423423
423413:	8b 45 fc             	mov    -0x4(%ebp),%eax
423416:	e8 8d fd ff ff       	call   0x4231a8
42341b:	c3                   	ret
42341c:	e9 33 06 fe ff       	jmp    0x403a54
423421:	eb f0                	jmp    0x423413
423423:	5f                   	pop    %edi
423424:	5e                   	pop    %esi
423425:	5b                   	pop    %ebx
423426:	59                   	pop    %ecx
423427:	5d                   	pop    %ebp
423428:	c3                   	ret
423429:	8d 40 00             	lea    0x0(%eax),%eax
42342c:	55                   	push   %ebp
42342d:	8b ec                	mov    %esp,%ebp
42342f:	51                   	push   %ecx
423430:	53                   	push   %ebx
423431:	56                   	push   %esi
423432:	89 45 fc             	mov    %eax,-0x4(%ebp)
423435:	8b 45 fc             	mov    -0x4(%ebp),%eax
423438:	e8 5f fd ff ff       	call   0x42319c
42343d:	33 d2                	xor    %edx,%edx
42343f:	55                   	push   %ebp
423440:	68 8b 34 42 00       	push   $0x42348b
423445:	64 ff 32             	push   %fs:(%edx)
423448:	64 89 22             	mov    %esp,%fs:(%edx)
42344b:	8b 45 fc             	mov    -0x4(%ebp),%eax
42344e:	8b 58 04             	mov    0x4(%eax),%ebx
423451:	85 db                	test   %ebx,%ebx
423453:	74 20                	je     0x423475
423455:	8b f3                	mov    %ebx,%esi
423457:	8b 46 08             	mov    0x8(%esi),%eax
42345a:	85 c0                	test   %eax,%eax
42345c:	74 11                	je     0x42346f
42345e:	83 7e 14 00          	cmpl   $0x0,0x14(%esi)
423462:	7d 0b                	jge    0x42346f
423464:	50                   	push   %eax
423465:	e8 d2 30 fe ff       	call   0x40653c
42346a:	33 c0                	xor    %eax,%eax
42346c:	89 46 08             	mov    %eax,0x8(%esi)
42346f:	8b 1b                	mov    (%ebx),%ebx
423471:	85 db                	test   %ebx,%ebx
423473:	75 e0                	jne    0x423455
423475:	33 c0                	xor    %eax,%eax
423477:	5a                   	pop    %edx
423478:	59                   	pop    %ecx
423479:	59                   	pop    %ecx
42347a:	64 89 10             	mov    %edx,%fs:(%eax)
42347d:	68 92 34 42 00       	push   $0x423492
423482:	8b 45 fc             	mov    -0x4(%ebp),%eax
423485:	e8 1e fd ff ff       	call   0x4231a8
42348a:	c3                   	ret
42348b:	e9 c4 05 fe ff       	jmp    0x403a54
423490:	eb f0                	jmp    0x423482
423492:	5e                   	pop    %esi
423493:	5b                   	pop    %ebx
423494:	59                   	pop    %ecx
423495:	5d                   	pop    %ebp
423496:	c3                   	ret
423497:	90                   	nop
423498:	55                   	push   %ebp
423499:	8b ec                	mov    %esp,%ebp
42349b:	83 c4 f8             	add    $0xfffffff8,%esp
42349e:	53                   	push   %ebx
42349f:	56                   	push   %esi
4234a0:	33 c0                	xor    %eax,%eax
4234a2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4234a5:	a1 e4 58 47 00       	mov    0x4758e4,%eax
4234aa:	e8 99 56 ff ff       	call   0x418b48
4234af:	89 45 f8             	mov    %eax,-0x8(%ebp)
4234b2:	33 c0                	xor    %eax,%eax
4234b4:	55                   	push   %ebp
4234b5:	68 35 35 42 00       	push   $0x423535
4234ba:	64 ff 30             	push   %fs:(%eax)
4234bd:	64 89 20             	mov    %esp,%fs:(%eax)
4234c0:	eb 1e                	jmp    0x4234e0
4234c2:	8b 55 fc             	mov    -0x4(%ebp),%edx
4234c5:	8b 45 f8             	mov    -0x8(%ebp),%eax
4234c8:	e8 b7 52 ff ff       	call   0x418784
4234cd:	8b d8                	mov    %eax,%ebx
4234cf:	8b c3                	mov    %ebx,%eax
4234d1:	e8 52 15 00 00       	call   0x424a28
4234d6:	ff 45 fc             	incl   -0x4(%ebp)
4234d9:	8b c3                	mov    %ebx,%eax
4234db:	e8 5c 18 00 00       	call   0x424d3c
4234e0:	8b 45 f8             	mov    -0x8(%ebp),%eax
4234e3:	8b 40 08             	mov    0x8(%eax),%eax
4234e6:	3b 45 fc             	cmp    -0x4(%ebp),%eax
4234e9:	7f d7                	jg     0x4234c2
4234eb:	a1 dc 58 47 00       	mov    0x4758dc,%eax
4234f0:	e8 37 ff ff ff       	call   0x42342c
4234f5:	a1 e0 58 47 00       	mov    0x4758e0,%eax
4234fa:	e8 2d ff ff ff       	call   0x42342c
4234ff:	33 c0                	xor    %eax,%eax
423501:	5a                   	pop    %edx
423502:	59                   	pop    %ecx