4321fe:	c3                   	ret
4321ff:	90                   	nop
432200:	55                   	push   %ebp
432201:	8b ec                	mov    %esp,%ebp
432203:	51                   	push   %ecx
432204:	53                   	push   %ebx
432205:	56                   	push   %esi
432206:	84 d2                	test   %dl,%dl
432208:	74 08                	je     0x432212
43220a:	83 c4 f0             	add    $0xfffffff0,%esp
43220d:	e8 26 15 fd ff       	call   0x403738
432212:	88 55 ff             	mov    %dl,-0x1(%ebp)
432215:	8b d8                	mov    %eax,%ebx
432217:	33 d2                	xor    %edx,%edx
432219:	8b c3                	mov    %ebx,%eax
43221b:	e8 9c 11 fd ff       	call   0x4033bc
432220:	b2 01                	mov    $0x1,%dl
432222:	a1 98 63 42 00       	mov    0x426398,%eax
432227:	e8 68 86 ff ff       	call   0x42a894
43222c:	8b f0                	mov    %eax,%esi
43222e:	89 73 04             	mov    %esi,0x4(%ebx)
432231:	89 5e 14             	mov    %ebx,0x14(%esi)
432234:	c7 46 10 34 23 43 00 	movl   $0x432334,0x10(%esi)
43223b:	c7 43 1c 80 80 00 00 	movl   $0x8080,0x1c(%ebx)
432242:	c6 43 20 01          	movb   $0x1,0x20(%ebx)
432246:	33 c0                	xor    %eax,%eax
432248:	33 d2                	xor    %edx,%edx
43224a:	8a d0                	mov    %al,%dl
43224c:	c7 44 93 0c ff ff ff 	movl   $0xffffffff,0xc(%ebx,%edx,4)
432253:	ff
432254:	40                   	inc    %eax
432255:	3c 04                	cmp    $0x4,%al
432257:	75 ef                	jne    0x432248
432259:	83 3d 7c db 48 00 00 	cmpl   $0x0,0x48db7c
432260:	75 11                	jne    0x432273
432262:	b2 01                	mov    $0x1,%dl
432264:	a1 1c 1f 43 00       	mov    0x431f1c,%eax
432269:	e8 8e fe ff ff       	call   0x4320fc
43226e:	a3 7c db 48 00       	mov    %eax,0x48db7c
432273:	8b c3                	mov    %ebx,%eax
432275:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
432279:	74 0f                	je     0x43228a
43227b:	e8 10 15 fd ff       	call   0x403790
432280:	64 8f 05 00 00 00 00 	pop    %fs:0x0
432287:	83 c4 0c             	add    $0xc,%esp
43228a:	8b c3                	mov    %ebx,%eax
43228c:	5e                   	pop    %esi
43228d:	5b                   	pop    %ebx
43228e:	59                   	pop    %ecx
43228f:	5d                   	pop    %ebp
432290:	c3                   	ret
432291:	8d 40 00             	lea    0x0(%eax),%eax
432294:	53                   	push   %ebx
432295:	56                   	push   %esi
432296:	e8 05 15 fd ff       	call   0x4037a0
43229b:	8b da                	mov    %edx,%ebx
43229d:	8b f0                	mov    %eax,%esi
43229f:	8b 46 04             	mov    0x4(%esi),%eax
4322a2:	e8 45 11 fd ff       	call   0x4033ec
4322a7:	8b c6                	mov    %esi,%eax
4322a9:	e8 42 00 00 00       	call   0x4322f0
4322ae:	83 3d 7c db 48 00 00 	cmpl   $0x0,0x48db7c
4322b5:	74 1f                	je     0x4322d6
4322b7:	a1 7c db 48 00       	mov    0x48db7c,%eax
4322bc:	e8 33 ff ff ff       	call   0x4321f4
4322c1:	84 c0                	test   %al,%al
4322c3:	74 11                	je     0x4322d6
4322c5:	a1 7c db 48 00       	mov    0x48db7c,%eax
4322ca:	e8 1d 11 fd ff       	call   0x4033ec
4322cf:	33 c0                	xor    %eax,%eax
4322d1:	a3 7c db 48 00       	mov    %eax,0x48db7c
4322d6:	8b d3                	mov    %ebx,%edx
4322d8:	80 e2 fc             	and    $0xfc,%dl
4322db:	8b c6                	mov    %esi,%eax
4322dd:	e8 fa 10 fd ff       	call   0x4033dc
4322e2:	84 db                	test   %bl,%bl
4322e4:	7e 07                	jle    0x4322ed
4322e6:	8b c6                	mov    %esi,%eax
4322e8:	e8 9b 14 fd ff       	call   0x403788
4322ed:	5e                   	pop    %esi
4322ee:	5b                   	pop    %ebx
4322ef:	c3                   	ret
4322f0:	53                   	push   %ebx
4322f1:	56                   	push   %esi
4322f2:	57                   	push   %edi
4322f3:	8b f0                	mov    %eax,%esi
4322f5:	33 db                	xor    %ebx,%ebx
4322f7:	8b fb                	mov    %ebx,%edi
4322f9:	83 e7 7f             	and    $0x7f,%edi
4322fc:	8b 44 be 0c          	mov    0xc(%esi,%edi,4),%eax
432300:	83 f8 ff             	cmp    $0xffffffff,%eax
432303:	74 0a                	je     0x43230f
432305:	8b d0                	mov    %eax,%edx
432307:	8b 46 08             	mov    0x8(%esi),%eax
43230a:	e8 bd fd ff ff       	call   0x4320cc
43230f:	c7 44 be 0c ff ff ff 	movl   $0xffffffff,0xc(%esi,%edi,4)
432316:	ff
432317:	43                   	inc    %ebx
432318:	80 fb 04             	cmp    $0x4,%bl
43231b:	75 da                	jne    0x4322f7
43231d:	8b 56 08             	mov    0x8(%esi),%edx
432320:	a1 7c db 48 00       	mov    0x48db7c,%eax
432325:	e8 a6 fe ff ff       	call   0x4321d0
43232a:	33 c0                	xor    %eax,%eax
43232c:	89 46 08             	mov    %eax,0x8(%esi)
43232f:	5f                   	pop    %edi
432330:	5e                   	pop    %esi
432331:	5b                   	pop    %ebx
432332:	c3                   	ret
432333:	90                   	nop
432334:	53                   	push   %ebx
432335:	56                   	push   %esi
432336:	8b d8                	mov    %eax,%ebx
432338:	8b 73 04             	mov    0x4(%ebx),%esi
43233b:	3b d6                	cmp    %esi,%edx
43233d:	75 20                	jne    0x43235f
43233f:	8b c6                	mov    %esi,%eax
432341:	e8 02 8c ff ff       	call   0x42af48
432346:	89 43 1c             	mov    %eax,0x1c(%ebx)
432349:	8b c3                	mov    %ebx,%eax
43234b:	e8 a0 ff ff ff       	call   0x4322f0
432350:	66 83 7b 2a 00       	cmpw   $0x0,0x2a(%ebx)
432355:	74 08                	je     0x43235f
432357:	8b d3                	mov    %ebx,%edx
432359:	8b 43 2c             	mov    0x2c(%ebx),%eax
43235c:	ff 53 28             	call   *0x28(%ebx)
43235f:	5e                   	pop    %esi
432360:	5b                   	pop    %ebx
432361:	c3                   	ret
432362:	8b c0                	mov    %eax,%eax
432364:	53                   	push   %ebx
432365:	56                   	push   %esi
432366:	8b da                	mov    %edx,%ebx
432368:	8b f0                	mov    %eax,%esi
43236a:	8b c6                	mov    %esi,%eax
43236c:	e8 7f ff ff ff       	call   0x4322f0
432371:	8b d3                	mov    %ebx,%edx
432373:	8b 46 04             	mov    0x4(%esi),%eax
432376:	8b 08                	mov    (%eax),%ecx
432378:	ff 51 08             	call   *0x8(%ecx)
43237b:	85 db                	test   %ebx,%ebx
43237d:	74 58                	je     0x4323d7
43237f:	8b c3                	mov    %ebx,%eax
432381:	8b 10                	mov    (%eax),%edx
432383:	ff 52 20             	call   *0x20(%edx)
432386:	85 c0                	test   %eax,%eax
432388:	7e 4d                	jle    0x4323d7
43238a:	8b c3                	mov    %ebx,%eax
43238c:	e8 b7 8b ff ff       	call   0x42af48
432391:	89 46 1c             	mov    %eax,0x1c(%esi)
432394:	8b c3                	mov    %ebx,%eax
432396:	8b 10                	mov    (%eax),%edx
432398:	ff 52 2c             	call   *0x2c(%edx)
43239b:	50                   	push   %eax
43239c:	8b c3                	mov    %ebx,%eax
43239e:	8b 10                	mov    (%eax),%edx
4323a0:	ff 52 20             	call   *0x20(%edx)
4323a3:	5a                   	pop    %edx
4323a4:	92                   	xchg   %eax,%edx
4323a5:	8b ca                	mov    %edx,%ecx
4323a7:	99                   	cltd
4323a8:	f7 f9                	idiv   %ecx
4323aa:	85 d2                	test   %edx,%edx
4323ac:	75 29                	jne    0x4323d7
4323ae:	8b c3                	mov    %ebx,%eax
4323b0:	8b 10                	mov    (%eax),%edx
4323b2:	ff 52 2c             	call   *0x2c(%edx)
4323b5:	50                   	push   %eax
4323b6:	8b c3                	mov    %ebx,%eax
4323b8:	8b 10                	mov    (%eax),%edx
4323ba:	ff 52 20             	call   *0x20(%edx)
4323bd:	5a                   	pop    %edx
4323be:	92                   	xchg   %eax,%edx
4323bf:	8b ca                	mov    %edx,%ecx
4323c1:	99                   	cltd
4323c2:	f7 f9                	idiv   %ecx
4323c4:	83 f8 04             	cmp    $0x4,%eax
4323c7:	7e 05                	jle    0x4323ce
4323c9:	b8 01 00 00 00       	mov    $0x1,%eax
4323ce:	8b d0                	mov    %eax,%edx
4323d0:	8b c6                	mov    %esi,%eax
4323d2:	e8 05 00 00 00       	call   0x4323dc
4323d7:	5e                   	pop    %esi
4323d8:	5b                   	pop    %ebx
4323d9:	c3                   	ret
4323da:	8b c0                	mov    %eax,%eax
4323dc:	53                   	push   %ebx
4323dd:	56                   	push   %esi
4323de:	8b da                	mov    %edx,%ebx
4323e0:	8b f0                	mov    %eax,%esi
4323e2:	3a 5e 20             	cmp    0x20(%esi),%bl
4323e5:	74 18                	je     0x4323ff
4323e7:	84 db                	test   %bl,%bl
4323e9:	76 14                	jbe    0x4323ff
4323eb:	8b c6                	mov    %esi,%eax
4323ed:	e8 fe fe ff ff       	call   0x4322f0
4323f2:	88 5e 20             	mov    %bl,0x20(%esi)
4323f5:	8b 56 04             	mov    0x4(%esi),%edx
4323f8:	8b c6                	mov    %esi,%eax
4323fa:	e8 35 ff ff ff       	call   0x432334
4323ff:	5e                   	pop    %esi
432400:	5b                   	pop    %ebx
432401:	c3                   	ret
432402:	8b c0                	mov    %eax,%eax
432404:	55                   	push   %ebp
432405:	8b ec                	mov    %esp,%ebp
432407:	83 c4 c8             	add    $0xffffffc8,%esp
43240a:	53                   	push   %ebx
43240b:	56                   	push   %esi
43240c:	57                   	push   %edi
43240d:	88 55 fb             	mov    %dl,-0x5(%ebp)
432410:	89 45 fc             	mov    %eax,-0x4(%ebp)
432413:	80 7d fb 02          	cmpb   $0x2,-0x5(%ebp)
432417:	75 0d                	jne    0x432426
432419:	8b 45 fc             	mov    -0x4(%ebp),%eax
43241c:	80 78 20 03          	cmpb   $0x3,0x20(%eax)
432420:	73 04                	jae    0x432426
432422:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
432426:	33 c0                	xor    %eax,%eax
432428:	8a 45 fb             	mov    -0x5(%ebp),%al
43242b:	8b 55 fc             	mov    -0x4(%ebp),%edx
43242e:	8b 5c 82 0c          	mov    0xc(%edx,%eax,4),%ebx
432432:	83 fb ff             	cmp    $0xffffffff,%ebx
432435:	0f 85 96 05 00 00    	jne    0x4329d1
43243b:	8b 45 fc             	mov    -0x4(%ebp),%eax
43243e:	8b 40 04             	mov    0x4(%eax),%eax
432441:	8b 10                	mov    (%eax),%edx
432443:	ff 52 2c             	call   *0x2c(%edx)
432446:	8b f0                	mov    %eax,%esi
432448:	8b 45 fc             	mov    -0x4(%ebp),%eax
43244b:	8b 40 04             	mov    0x4(%eax),%eax
43244e:	8b 10                	mov    (%eax),%edx
432450:	ff 52 20             	call   *0x20(%edx)
432453:	0b f0                	or     %eax,%esi
432455:	0f 84 76 05 00 00    	je     0x4329d1
43245b:	8b 45 fc             	mov    -0x4(%ebp),%eax
43245e:	8b 40 04             	mov    0x4(%eax),%eax
432461:	8b 10                	mov    (%eax),%edx
432463:	ff 52 2c             	call   *0x2c(%edx)
432466:	8b 55 fc             	mov    -0x4(%ebp),%edx
432469:	0f b6 52 20          	movzbl 0x20(%edx),%edx
43246d:	8b ca                	mov    %edx,%ecx
43246f:	99                   	cltd
432470:	f7 f9                	idiv   %ecx
432472:	8b f8                	mov    %eax,%edi
432474:	8b 45 fc             	mov    -0x4(%ebp),%eax
432477:	8b 40 04             	mov    0x4(%eax),%eax
43247a:	8b 10                	mov    (%eax),%edx
43247c:	ff 52 20             	call   *0x20(%edx)
43247f:	8b f0                	mov    %eax,%esi
432481:	8b 45 fc             	mov    -0x4(%ebp),%eax
432484:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
432488:	75 2e                	jne    0x4324b8
43248a:	83 3d 7c db 48 00 00 	cmpl   $0x0,0x48db7c
432491:	75 11                	jne    0x4324a4
432493:	b2 01                	mov    $0x1,%dl
432495:	a1 1c 1f 43 00       	mov    0x431f1c,%eax
43249a:	e8 5d fc ff ff       	call   0x4320fc
43249f:	a3 7c db 48 00       	mov    %eax,0x48db7c
4324a4:	8b ce                	mov    %esi,%ecx
4324a6:	8b d7                	mov    %edi,%edx
4324a8:	a1 7c db 48 00       	mov    0x48db7c,%eax
4324ad:	e8 be fc ff ff       	call   0x432170
4324b2:	8b 55 fc             	mov    -0x4(%ebp),%edx
4324b5:	89 42 08             	mov    %eax,0x8(%edx)
4324b8:	b2 01                	mov    $0x1,%dl
4324ba:	a1 98 63 42 00       	mov    0x426398,%eax
4324bf:	e8 d0 83 ff ff       	call   0x42a894
4324c4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4324c7:	33 c0                	xor    %eax,%eax
4324c9:	55                   	push   %ebp
4324ca:	68 b3 29 43 00       	push   $0x4329b3
4324cf:	64 ff 30             	push   %fs:(%eax)
4324d2:	64 89 20             	mov    %esp,%fs:(%eax)
4324d5:	8b d7                	mov    %edi,%edx
4324d7:	8b 45 f4             	mov    -0xc(%ebp),%eax
4324da:	8b 08                	mov    (%eax),%ecx
4324dc:	ff 51 40             	call   *0x40(%ecx)
4324df:	8b d6                	mov    %esi,%edx
4324e1:	8b 45 f4             	mov    -0xc(%ebp),%eax
4324e4:	8b 08                	mov    (%eax),%ecx
4324e6:	ff 51 34             	call   *0x34(%ecx)
4324e9:	56                   	push   %esi
4324ea:	8d 45 d8             	lea    -0x28(%ebp),%eax
4324ed:	50                   	push   %eax
4324ee:	8b cf                	mov    %edi,%ecx
4324f0:	33 d2                	xor    %edx,%edx
4324f2:	33 c0                	xor    %eax,%eax
4324f4:	e8 bb 82 fe ff       	call   0x41a7b4
4324f9:	8b 45 f4             	mov    -0xc(%ebp),%eax
4324fc:	e8 5b 89 ff ff       	call   0x42ae5c
432501:	8b 40 14             	mov    0x14(%eax),%eax
432504:	ba 0f 00 00 ff       	mov    $0xff00000f,%edx
432509:	e8 02 56 ff ff       	call   0x427b10
43250e:	8b 45 fc             	mov    -0x4(%ebp),%eax
432511:	8b 40 04             	mov    0x4(%eax),%eax
432514:	8b 10                	mov    (%eax),%edx
432516:	ff 52 24             	call   *0x24(%edx)
432519:	e8 06 81 ff ff       	call   0x42a624
43251e:	8b d0                	mov    %eax,%edx
432520:	8b 45 f4             	mov    -0xc(%ebp),%eax
432523:	8b 08                	mov    (%eax),%ecx
432525:	ff 51 38             	call   *0x38(%ecx)
432528:	8a 5d fb             	mov    -0x5(%ebp),%bl
43252b:	8b 45 fc             	mov    -0x4(%ebp),%eax
43252e:	3a 58 20             	cmp    0x20(%eax),%bl
432531:	7c 02                	jl     0x432535
432533:	33 db                	xor    %ebx,%ebx
432535:	56                   	push   %esi
432536:	8d 45 c8             	lea    -0x38(%ebp),%eax
432539:	50                   	push   %eax
43253a:	33 c9                	xor    %ecx,%ecx
43253c:	8a cb                	mov    %bl,%cl
43253e:	41                   	inc    %ecx
43253f:	0f af cf             	imul   %edi,%ecx
432542:	33 c0                	xor    %eax,%eax
432544:	8a c3                	mov    %bl,%al
432546:	f7 ef                	imul   %edi
432548:	33 d2                	xor    %edx,%edx
43254a:	e8 65 82 fe ff       	call   0x41a7b4
43254f:	8a 45 fb             	mov    -0x5(%ebp),%al
432552:	2c 01                	sub    $0x1,%al
432554:	72 0b                	jb     0x432561
432556:	74 7f                	je     0x4325d7
432558:	48                   	dec    %eax
432559:	2c 02                	sub    $0x2,%al
43255b:	0f 83 3c 04 00 00    	jae    0x43299d
432561:	8d 45 c8             	lea    -0x38(%ebp),%eax
432564:	50                   	push   %eax
432565:	8b 45 fc             	mov    -0x4(%ebp),%eax
432568:	8b 40 04             	mov    0x4(%eax),%eax
43256b:	e8 ec 88 ff ff       	call   0x42ae5c
432570:	50                   	push   %eax
432571:	8b 45 f4             	mov    -0xc(%ebp),%eax
432574:	e8 e3 88 ff ff       	call   0x42ae5c
432579:	8d 55 d8             	lea    -0x28(%ebp),%edx
43257c:	59                   	pop    %ecx
43257d:	e8 fe 57 ff ff       	call   0x427d80
432582:	8b 45 fc             	mov    -0x4(%ebp),%eax
432585:	8b 40 04             	mov    0x4(%eax),%eax
432588:	80 78 38 01          	cmpb   $0x1,0x38(%eax)
43258c:	75 25                	jne    0x4325b3
43258e:	8b 45 fc             	mov    -0x4(%ebp),%eax
432591:	8b 48 1c             	mov    0x1c(%eax),%ecx
432594:	8b 45 fc             	mov    -0x4(%ebp),%eax
432597:	8b 40 08             	mov    0x8(%eax),%eax
43259a:	8b 55 f4             	mov    -0xc(%ebp),%edx
43259d:	e8 fe fa ff ff       	call   0x4320a0
4325a2:	33 d2                	xor    %edx,%edx
4325a4:	8a 55 fb             	mov    -0x5(%ebp),%dl