4131d5:	74 0c                	je     0x4131e3
4131d7:	33 c0                	xor    %eax,%eax
4131d9:	89 07                	mov    %eax,(%edi)
4131db:	83 c7 04             	add    $0x4,%edi
4131de:	83 e9 01             	sub    $0x1,%ecx
4131e1:	75 f6                	jne    0x4131d9
4131e3:	83 e3 03             	and    $0x3,%ebx
4131e6:	0f 85 77 ff ff ff    	jne    0x413163
4131ec:	8b 44 24 10          	mov    0x10(%esp),%eax
4131f0:	5b                   	pop    %ebx
4131f1:	5e                   	pop    %esi
4131f2:	5f                   	pop    %edi
4131f3:	c3                   	ret
4131f4:	8b ff                	mov    %edi,%edi
4131f6:	55                   	push   %ebp
4131f7:	8b ec                	mov    %esp,%ebp
4131f9:	53                   	push   %ebx
4131fa:	57                   	push   %edi
4131fb:	8b f9                	mov    %ecx,%edi
4131fd:	8b 4d 08             	mov    0x8(%ebp),%ecx
413200:	c6 47 0c 00          	movb   $0x0,0xc(%edi)
413204:	8d 5f 04             	lea    0x4(%edi),%ebx
413207:	85 c9                	test   %ecx,%ecx
413209:	74 07                	je     0x413212
41320b:	8b 01                	mov    (%ecx),%eax
41320d:	8b 49 04             	mov    0x4(%ecx),%ecx
413210:	eb 14                	jmp    0x413226
413212:	83 3d b8 f7 43 00 00 	cmpl   $0x0,0x43f7b8
413219:	75 12                	jne    0x41322d
41321b:	a1 10 d2 43 00       	mov    0x43d210,%eax
413220:	8b 0d 14 d2 43 00    	mov    0x43d214,%ecx
413226:	89 03                	mov    %eax,(%ebx)
413228:	89 4b 04             	mov    %ecx,0x4(%ebx)
41322b:	eb 41                	jmp    0x41326e
41322d:	56                   	push   %esi
41322e:	e8 b6 90 00 00       	call   0x41c2e9
413233:	89 07                	mov    %eax,(%edi)
413235:	8d 77 08             	lea    0x8(%edi),%esi
413238:	53                   	push   %ebx
413239:	50                   	push   %eax
41323a:	8b 48 4c             	mov    0x4c(%eax),%ecx
41323d:	89 0b                	mov    %ecx,(%ebx)
41323f:	8b 48 48             	mov    0x48(%eax),%ecx
413242:	89 0e                	mov    %ecx,(%esi)
413244:	e8 0d 97 00 00       	call   0x41c956
413249:	56                   	push   %esi
41324a:	ff 37                	push   (%edi)
41324c:	e8 63 97 00 00       	call   0x41c9b4
413251:	8b 0f                	mov    (%edi),%ecx
413253:	83 c4 10             	add    $0x10,%esp
413256:	8b 81 50 03 00 00    	mov    0x350(%ecx),%eax
41325c:	5e                   	pop    %esi
41325d:	a8 02                	test   $0x2,%al
41325f:	75 0d                	jne    0x41326e
413261:	83 c8 02             	or     $0x2,%eax
413264:	89 81 50 03 00 00    	mov    %eax,0x350(%ecx)
41326a:	c6 47 0c 01          	movb   $0x1,0xc(%edi)
41326e:	8b c7                	mov    %edi,%eax
413270:	5f                   	pop    %edi
413271:	5b                   	pop    %ebx
413272:	5d                   	pop    %ebp
413273:	c2 04 00             	ret    $0x4
413276:	ff 31                	push   (%ecx)
413278:	e8 7b 01 00 00       	call   0x4133f8
41327d:	59                   	pop    %ecx
41327e:	c3                   	ret
41327f:	8b ff                	mov    %edi,%edi
413281:	55                   	push   %ebp
413282:	8b ec                	mov    %esp,%ebp
413284:	51                   	push   %ecx
413285:	51                   	push   %ecx
413286:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
41328b:	33 c5                	xor    %ebp,%eax
41328d:	89 45 fc             	mov    %eax,-0x4(%ebp)
413290:	56                   	push   %esi
413291:	57                   	push   %edi
413292:	8b 7d 08             	mov    0x8(%ebp),%edi
413295:	85 ff                	test   %edi,%edi
413297:	75 16                	jne    0x4132af
413299:	e8 d3 93 00 00       	call   0x41c671
41329e:	6a 16                	push   $0x16
4132a0:	5e                   	pop    %esi
4132a1:	89 30                	mov    %esi,(%eax)
4132a3:	e8 46 a1 ff ff       	call   0x40d3ee
4132a8:	8b c6                	mov    %esi,%eax
4132aa:	e9 38 01 00 00       	jmp    0x4133e7
4132af:	ff 75 0c             	push   0xc(%ebp)
4132b2:	57                   	push   %edi
4132b3:	e8 ee 94 00 00       	call   0x41c7a6
4132b8:	59                   	pop    %ecx
4132b9:	59                   	pop    %ecx
4132ba:	3b 45 0c             	cmp    0xc(%ebp),%eax
4132bd:	72 07                	jb     0x4132c6
4132bf:	33 c0                	xor    %eax,%eax
4132c1:	66 89 07             	mov    %ax,(%edi)
4132c4:	eb d3                	jmp    0x413299
4132c6:	8b 45 10             	mov    0x10(%ebp),%eax
4132c9:	8b 00                	mov    (%eax),%eax
4132cb:	8b 80 a8 00 00 00    	mov    0xa8(%eax),%eax
4132d1:	85 c0                	test   %eax,%eax
4132d3:	75 2d                	jne    0x413302
4132d5:	0f b7 07             	movzwl (%edi),%eax
4132d8:	66 85 c0             	test   %ax,%ax
4132db:	74 1e                	je     0x4132fb
4132dd:	8b c8                	mov    %eax,%ecx
4132df:	8d 41 bf             	lea    -0x41(%ecx),%eax
4132e2:	66 83 f8 19          	cmp    $0x19,%ax
4132e6:	77 06                	ja     0x4132ee
4132e8:	8d 41 20             	lea    0x20(%ecx),%eax
4132eb:	66 89 07             	mov    %ax,(%edi)
4132ee:	83 c7 02             	add    $0x2,%edi
4132f1:	0f b7 07             	movzwl (%edi),%eax
4132f4:	8b c8                	mov    %eax,%ecx
4132f6:	66 85 c0             	test   %ax,%ax
4132f9:	75 e4                	jne    0x4132df
4132fb:	33 c0                	xor    %eax,%eax
4132fd:	e9 e5 00 00 00       	jmp    0x4133e7
413302:	33 f6                	xor    %esi,%esi
413304:	56                   	push   %esi
413305:	56                   	push   %esi
413306:	6a ff                	push   $0xffffffff
413308:	57                   	push   %edi
413309:	68 00 01 00 00       	push   $0x100
41330e:	50                   	push   %eax
41330f:	e8 62 c1 00 00       	call   0x41f476
413314:	83 c4 18             	add    $0x18,%esp
413317:	89 45 f8             	mov    %eax,-0x8(%ebp)
41331a:	85 c0                	test   %eax,%eax
41331c:	75 17                	jne    0x413335
41331e:	e8 4e 93 00 00       	call   0x41c671
413323:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
413329:	e8 43 93 00 00       	call   0x41c671
41332e:	8b 00                	mov    (%eax),%eax
413330:	e9 b2 00 00 00       	jmp    0x4133e7
413335:	39 45 0c             	cmp    %eax,0xc(%ebp)
413338:	73 11                	jae    0x41334b
41333a:	33 c0                	xor    %eax,%eax
41333c:	66 89 07             	mov    %ax,(%edi)
41333f:	e8 2d 93 00 00       	call   0x41c671
413344:	6a 22                	push   $0x22
413346:	e9 55 ff ff ff       	jmp    0x4132a0
41334b:	03 c0                	add    %eax,%eax
41334d:	8d 48 08             	lea    0x8(%eax),%ecx
413350:	3b c1                	cmp    %ecx,%eax
413352:	1b c0                	sbb    %eax,%eax
413354:	23 c1                	and    %ecx,%eax
413356:	74 74                	je     0x4133cc
413358:	3d 00 04 00 00       	cmp    $0x400,%eax
41335d:	77 13                	ja     0x413372
41335f:	e8 ac aa 01 00       	call   0x42de10
413364:	8b f4                	mov    %esp,%esi
413366:	85 f6                	test   %esi,%esi
413368:	74 62                	je     0x4133cc
41336a:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
413370:	eb 13                	jmp    0x413385
413372:	50                   	push   %eax
413373:	e8 b8 38 ff ff       	call   0x406c30
413378:	8b f0                	mov    %eax,%esi
41337a:	59                   	pop    %ecx
41337b:	85 f6                	test   %esi,%esi
41337d:	74 4d                	je     0x4133cc
41337f:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
413385:	83 c6 08             	add    $0x8,%esi
413388:	85 f6                	test   %esi,%esi
41338a:	74 40                	je     0x4133cc
41338c:	ff 75 f8             	push   -0x8(%ebp)
41338f:	8b 45 10             	mov    0x10(%ebp),%eax
413392:	56                   	push   %esi
413393:	6a ff                	push   $0xffffffff
413395:	57                   	push   %edi
413396:	8b 00                	mov    (%eax),%eax
413398:	68 00 01 00 00       	push   $0x100
41339d:	ff b0 a8 00 00 00    	push   0xa8(%eax)
4133a3:	e8 ce c0 00 00       	call   0x41f476
4133a8:	83 c4 18             	add    $0x18,%esp
4133ab:	85 c0                	test   %eax,%eax
4133ad:	74 11                	je     0x4133c0
4133af:	56                   	push   %esi
4133b0:	ff 75 0c             	push   0xc(%ebp)
4133b3:	57                   	push   %edi
4133b4:	e8 cf f6 ff ff       	call   0x412a88
4133b9:	83 c4 0c             	add    $0xc,%esp
4133bc:	8b f8                	mov    %eax,%edi
4133be:	eb 1e                	jmp    0x4133de
4133c0:	e8 ac 92 00 00       	call   0x41c671
4133c5:	6a 2a                	push   $0x2a
4133c7:	5f                   	pop    %edi
4133c8:	89 38                	mov    %edi,(%eax)
4133ca:	eb 12                	jmp    0x4133de
4133cc:	e8 a0 92 00 00       	call   0x41c671
4133d1:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
4133d7:	e8 95 92 00 00       	call   0x41c671
4133dc:	8b 38                	mov    (%eax),%edi
4133de:	56                   	push   %esi
4133df:	e8 14 00 00 00       	call   0x4133f8
4133e4:	59                   	pop    %ecx
4133e5:	8b c7                	mov    %edi,%eax
4133e7:	8d 65 f0             	lea    -0x10(%ebp),%esp
4133ea:	5f                   	pop    %edi
4133eb:	5e                   	pop    %esi
4133ec:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4133ef:	33 cd                	xor    %ebp,%ecx
4133f1:	e8 b1 68 ff ff       	call   0x409ca7
4133f6:	c9                   	leave
4133f7:	c3                   	ret
4133f8:	8b ff                	mov    %edi,%edi
4133fa:	55                   	push   %ebp
4133fb:	8b ec                	mov    %esp,%ebp
4133fd:	8b 45 08             	mov    0x8(%ebp),%eax
413400:	85 c0                	test   %eax,%eax
413402:	74 12                	je     0x413416
413404:	83 e8 08             	sub    $0x8,%eax
413407:	81 38 dd dd 00 00    	cmpl   $0xdddd,(%eax)
41340d:	75 07                	jne    0x413416
41340f:	50                   	push   %eax
413410:	e8 fb 37 ff ff       	call   0x406c10
413415:	59                   	pop    %ecx
413416:	5d                   	pop    %ebp
413417:	c3                   	ret
413418:	8b ff                	mov    %edi,%edi
41341a:	55                   	push   %ebp
41341b:	8b ec                	mov    %esp,%ebp
41341d:	6a 00                	push   $0x0
41341f:	ff 75 0c             	push   0xc(%ebp)
413422:	ff 75 08             	push   0x8(%ebp)
413425:	e8 05 00 00 00       	call   0x41342f
41342a:	83 c4 0c             	add    $0xc,%esp
41342d:	5d                   	pop    %ebp
41342e:	c3                   	ret
41342f:	8b ff                	mov    %edi,%edi
413431:	55                   	push   %ebp
413432:	8b ec                	mov    %esp,%ebp
413434:	83 ec 10             	sub    $0x10,%esp
413437:	ff 75 10             	push   0x10(%ebp)
41343a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41343d:	e8 b2 fd ff ff       	call   0x4131f4
413442:	8d 45 f4             	lea    -0xc(%ebp),%eax
413445:	50                   	push   %eax
413446:	ff 75 0c             	push   0xc(%ebp)
413449:	ff 75 08             	push   0x8(%ebp)
41344c:	e8 2e fe ff ff       	call   0x41327f
413451:	83 c4 0c             	add    $0xc,%esp
413454:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
413458:	74 0a                	je     0x413464
41345a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41345d:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
413464:	c9                   	leave
413465:	c3                   	ret
413466:	6a 10                	push   $0x10
413468:	68 38 ab 43 00       	push   $0x43ab38
41346d:	e8 5e 70 ff ff       	call   0x40a4d0
413472:	8b 75 08             	mov    0x8(%ebp),%esi
413475:	85 f6                	test   %esi,%esi
413477:	75 14                	jne    0x41348d
413479:	e8 f3 91 00 00       	call   0x41c671
41347e:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
413484:	e8 65 9f ff ff       	call   0x40d3ee
413489:	33 c0                	xor    %eax,%eax
41348b:	eb 65                	jmp    0x4134f2
41348d:	8b 7d 0c             	mov    0xc(%ebp),%edi
413490:	85 ff                	test   %edi,%edi
413492:	74 e5                	je     0x413479
413494:	33 db                	xor    %ebx,%ebx
413496:	66 39 1f             	cmp    %bx,(%edi)
413499:	74 de                	je     0x413479
41349b:	66 39 1e             	cmp    %bx,(%esi)
41349e:	75 0d                	jne    0x4134ad
4134a0:	e8 cc 91 00 00       	call   0x41c671
4134a5:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4134ab:	eb dc                	jmp    0x413489
4134ad:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4134b0:	50                   	push   %eax
4134b1:	e8 fe bf 00 00       	call   0x41f4b4
4134b6:	59                   	pop    %ecx
4134b7:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
4134ba:	75 0d                	jne    0x4134c9
4134bc:	e8 b0 91 00 00       	call   0x41c671
4134c1:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
4134c7:	eb c0                	jmp    0x413489
4134c9:	89 5d e0             	mov    %ebx,-0x20(%ebp)
4134cc:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4134cf:	ff 75 e4             	push   -0x1c(%ebp)
4134d2:	ff 75 10             	push   0x10(%ebp)
4134d5:	57                   	push   %edi
4134d6:	56                   	push   %esi
4134d7:	e8 40 c5 00 00       	call   0x41fa1c
4134dc:	83 c4 10             	add    $0x10,%esp
4134df:	8b f0                	mov    %eax,%esi
4134e1:	89 75 e0             	mov    %esi,-0x20(%ebp)
4134e4:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4134eb:	e8 15 00 00 00       	call   0x413505
4134f0:	8b c6                	mov    %esi,%eax
4134f2:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4134f5:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4134fc:	59                   	pop    %ecx
4134fd:	5f                   	pop    %edi
4134fe:	5e                   	pop    %esi
4134ff:	5b                   	pop    %ebx
413500:	c9                   	leave
413501:	c3                   	ret
413502:	8b 75 e0             	mov    -0x20(%ebp),%esi
413505:	85 f6                	test   %esi,%esi
413507:	75 09                	jne    0x413512
413509:	ff 75 e4             	push   -0x1c(%ebp)
41350c:	e8 0c c0 00 00       	call   0x41f51d
413511:	59                   	pop    %ecx
413512:	ff 75 e4             	push   -0x1c(%ebp)
413515:	e8 cb a4 00 00       	call   0x41d9e5
41351a:	59                   	pop    %ecx
41351b:	c3                   	ret
41351c:	8b ff                	mov    %edi,%edi
41351e:	55                   	push   %ebp
41351f:	8b ec                	mov    %esp,%ebp
413521:	56                   	push   %esi
413522:	8b 75 08             	mov    0x8(%ebp),%esi
413525:	85 f6                	test   %esi,%esi
413527:	75 11                	jne    0x41353a
413529:	e8 43 91 00 00       	call   0x41c671
41352e:	6a 16                	push   $0x16
413530:	5e                   	pop    %esi
413531:	89 30                	mov    %esi,(%eax)
413533:	e8 b6 9e ff ff       	call   0x40d3ee
413538:	eb 24                	jmp    0x41355e
41353a:	68 80 00 00 00       	push   $0x80
41353f:	ff 75 10             	push   0x10(%ebp)
413542:	ff 75 0c             	push   0xc(%ebp)
413545:	e8 1c ff ff ff       	call   0x413466
41354a:	83 c4 0c             	add    $0xc,%esp
41354d:	89 06                	mov    %eax,(%esi)
41354f:	85 c0                	test   %eax,%eax
413551:	75 09                	jne    0x41355c
413553:	e8 19 91 00 00       	call   0x41c671
413558:	8b 30                	mov    (%eax),%esi
41355a:	eb 02                	jmp    0x41355e
41355c:	33 f6                	xor    %esi,%esi
41355e:	8b c6                	mov    %esi,%eax
413560:	5e                   	pop    %esi
413561:	5d                   	pop    %ebp
413562:	c3                   	ret
413563:	8b ff                	mov    %edi,%edi
413565:	55                   	push   %ebp
413566:	8b ec                	mov    %esp,%ebp
413568:	5d                   	pop    %ebp
413569:	e9 f8 fe ff ff       	jmp    0x413466
41356e:	6a 10                	push   $0x10
413570:	68 58 ab 43 00       	push   $0x43ab58
413575:	e8 56 6f ff ff       	call   0x40a4d0
41357a:	8b 75 08             	mov    0x8(%ebp),%esi
41357d:	89 75 e0             	mov    %esi,-0x20(%ebp)
413580:	85 f6                	test   %esi,%esi