436267:	8b f0                	mov    %eax,%esi
436269:	85 f6                	test   %esi,%esi
43626b:	59                   	pop    %ecx
43626c:	59                   	pop    %ecx
43626d:	75 04                	jne    0x436273
43626f:	33 c0                	xor    %eax,%eax
436271:	eb 48                	jmp    0x4362bb
436273:	8b 4d 0c             	mov    0xc(%ebp),%ecx
436276:	b8 00 04 00 00       	mov    $0x400,%eax
43627b:	3b c8                	cmp    %eax,%ecx
43627d:	74 25                	je     0x4362a4
43627f:	76 ee                	jbe    0x43626f
436281:	81 f9 06 04 00 00    	cmp    $0x406,%ecx
436287:	77 e6                	ja     0x43626f
436289:	57                   	push   %edi
43628a:	ff 75 14             	push   0x14(%ebp)
43628d:	8b 3e                	mov    (%esi),%edi
43628f:	51                   	push   %ecx
436290:	ff 75 10             	push   0x10(%ebp)
436293:	e8 c1 90 01 00       	call   0x44f359
436298:	50                   	push   %eax
436299:	8b ce                	mov    %esi,%ecx
43629b:	ff 97 5c 01 00 00    	call   *0x15c(%edi)
4362a1:	5f                   	pop    %edi
4362a2:	eb 17                	jmp    0x4362bb
4362a4:	ff 75 14             	push   0x14(%ebp)
4362a7:	8b 4d 10             	mov    0x10(%ebp),%ecx
4362aa:	8b 06                	mov    (%esi),%eax
4362ac:	c1 e9 10             	shr    $0x10,%ecx
4362af:	51                   	push   %ecx
4362b0:	ff 75 10             	push   0x10(%ebp)
4362b3:	8b ce                	mov    %esi,%ecx
4362b5:	ff 90 58 01 00 00    	call   *0x158(%eax)
4362bb:	5e                   	pop    %esi
4362bc:	5d                   	pop    %ebp
4362bd:	c2 10 00             	ret    $0x10
4362c0:	b8 94 18 49 00       	mov    $0x491894,%eax
4362c5:	c3                   	ret
4362c6:	56                   	push   %esi
4362c7:	8b f1                	mov    %ecx,%esi
4362c9:	8b 06                	mov    (%esi),%eax
4362cb:	57                   	push   %edi
4362cc:	ff 90 58 01 00 00    	call   *0x158(%eax)
4362d2:	8b f8                	mov    %eax,%edi
4362d4:	57                   	push   %edi
4362d5:	e8 8a 04 01 00       	call   0x446764
4362da:	8b ce                	mov    %esi,%ecx
4362dc:	e8 1e e9 00 00       	call   0x444bff
4362e1:	e8 64 ea 00 00       	call   0x444d4a
4362e6:	85 ff                	test   %edi,%edi
4362e8:	74 09                	je     0x4362f3
4362ea:	8b 07                	mov    (%edi),%eax
4362ec:	6a 01                	push   $0x1
4362ee:	8b cf                	mov    %edi,%ecx
4362f0:	ff 50 04             	call   *0x4(%eax)
4362f3:	5f                   	pop    %edi
4362f4:	5e                   	pop    %esi
4362f5:	c3                   	ret
4362f6:	56                   	push   %esi
4362f7:	57                   	push   %edi
4362f8:	8b f1                	mov    %ecx,%esi
4362fa:	e8 7e c6 00 00       	call   0x44297d
4362ff:	8b 4e 70             	mov    0x70(%esi),%ecx
436302:	89 41 04             	mov    %eax,0x4(%ecx)
436305:	ff 76 70             	push   0x70(%esi)
436308:	ff 15 ac 0a 4b 00    	call   *0x4b0aac
43630e:	8b ce                	mov    %esi,%ecx
436310:	8b f8                	mov    %eax,%edi
436312:	e8 a0 c6 00 00       	call   0x4429b7
436317:	85 ff                	test   %edi,%edi
436319:	74 04                	je     0x43631f
43631b:	8b c7                	mov    %edi,%eax
43631d:	eb 03                	jmp    0x436322
43631f:	6a 02                	push   $0x2
436321:	58                   	pop    %eax
436322:	5f                   	pop    %edi
436323:	5e                   	pop    %esi
436324:	c3                   	ret
436325:	8b 41 70             	mov    0x70(%ecx),%eax
436328:	8b 40 08             	mov    0x8(%eax),%eax
43632b:	85 c0                	test   %eax,%eax
43632d:	75 01                	jne    0x436330
43632f:	c3                   	ret
436330:	50                   	push   %eax
436331:	ff 15 40 03 4b 00    	call   *0x4b0340
436337:	c3                   	ret
436338:	8b 41 70             	mov    0x70(%ecx),%eax
43633b:	80 48 15 04          	orb    $0x4,0x15(%eax)
43633f:	ff 71 70             	push   0x70(%ecx)
436342:	ff 15 ac 0a 4b 00    	call   *0x4b0aac
436348:	c3                   	ret
436349:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
43634e:	75 04                	jne    0x436354
436350:	33 c0                	xor    %eax,%eax
436352:	eb 5d                	jmp    0x4363b1
436354:	53                   	push   %ebx
436355:	56                   	push   %esi
436356:	57                   	push   %edi
436357:	ff 74 24 10          	push   0x10(%esp)
43635b:	8b 3d 40 03 4b 00    	mov    0x4b0340,%edi
436361:	ff d7                	call   *%edi
436363:	8b 5c 24 14          	mov    0x14(%esp),%ebx
436367:	85 db                	test   %ebx,%ebx
436369:	8b f0                	mov    %eax,%esi
43636b:	74 05                	je     0x436372
43636d:	53                   	push   %ebx
43636e:	ff d7                	call   *%edi
436370:	eb 02                	jmp    0x436374
436372:	33 c0                	xor    %eax,%eax
436374:	85 f6                	test   %esi,%esi
436376:	75 04                	jne    0x43637c
436378:	33 c0                	xor    %eax,%eax
43637a:	eb 32                	jmp    0x4363ae
43637c:	50                   	push   %eax
43637d:	0f b7 46 04          	movzwl 0x4(%esi),%eax
436381:	03 c6                	add    %esi,%eax
436383:	50                   	push   %eax
436384:	0f b7 46 02          	movzwl 0x2(%esi),%eax
436388:	03 c6                	add    %esi,%eax
43638a:	50                   	push   %eax
43638b:	0f b7 06             	movzwl (%esi),%eax
43638e:	03 c6                	add    %esi,%eax
436390:	50                   	push   %eax
436391:	ff 15 ac 00 4b 00    	call   *0x4b00ac
436397:	ff 74 24 10          	push   0x10(%esp)
43639b:	8b 35 44 03 4b 00    	mov    0x4b0344,%esi
4363a1:	8b f8                	mov    %eax,%edi
4363a3:	ff d6                	call   *%esi
4363a5:	85 db                	test   %ebx,%ebx
4363a7:	74 03                	je     0x4363ac
4363a9:	53                   	push   %ebx
4363aa:	ff d6                	call   *%esi
4363ac:	8b c7                	mov    %edi,%eax
4363ae:	5f                   	pop    %edi
4363af:	5e                   	pop    %esi
4363b0:	5b                   	pop    %ebx
4363b1:	c2 08 00             	ret    $0x8
4363b4:	b8 f7 45 48 00       	mov    $0x4845f7,%eax
4363b9:	e8 be 18 fe ff       	call   0x417c7c
4363be:	51                   	push   %ecx
4363bf:	56                   	push   %esi
4363c0:	57                   	push   %edi
4363c1:	ff 75 0c             	push   0xc(%ebp)
4363c4:	8b f1                	mov    %ecx,%esi
4363c6:	6a 00                	push   $0x0
4363c8:	89 75 f0             	mov    %esi,-0x10(%ebp)
4363cb:	e8 a2 c3 00 00       	call   0x442772
4363d0:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4363d4:	6a 54                	push   $0x54
4363d6:	8d 7e 70             	lea    0x70(%esi),%edi
4363d9:	6a 00                	push   $0x0
4363db:	57                   	push   %edi
4363dc:	c7 06 d4 18 49 00    	movl   $0x4918d4,(%esi)
4363e2:	e8 59 1e fe ff       	call   0x418240
4363e7:	8b 45 08             	mov    0x8(%ebp),%eax
4363ea:	c7 07 54 00 00 00    	movl   $0x54,(%edi)
4363f0:	0d 00 20 04 00       	or     $0x42000,%eax
4363f5:	8d be 80 00 00 00    	lea    0x80(%esi),%edi
4363fb:	83 c4 0c             	add    $0xc,%esp
4363fe:	89 07                	mov    %eax,(%edi)
436400:	c7 86 b4 00 00 00 d4 	movl   $0x435ed4,0xb4(%esi)
436407:	5e 43 00
43640a:	c7 86 b8 00 00 00 3f 	movl   $0x43623f,0xb8(%esi)
436411:	62 43 00
436414:	e8 8b c6 00 00       	call   0x442aa4
436419:	85 c0                	test   %eax,%eax
43641b:	74 04                	je     0x436421
43641d:	80 4f 01 08          	orb    $0x8,0x1(%edi)
436421:	8b 4d f4             	mov    -0xc(%ebp),%ecx
436424:	5f                   	pop    %edi
436425:	8b c6                	mov    %esi,%eax
436427:	5e                   	pop    %esi
436428:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
43642f:	c9                   	leave
436430:	c2 08 00             	ret    $0x8
436433:	ff 71 78             	push   0x78(%ecx)
436436:	ff 71 7c             	push   0x7c(%ecx)
436439:	e8 0b ff ff ff       	call   0x436349
43643e:	c3                   	ret
43643f:	b8 09 46 48 00       	mov    $0x484609,%eax
436444:	e8 33 18 fe ff       	call   0x417c7c
436449:	51                   	push   %ecx
43644a:	56                   	push   %esi
43644b:	ff 75 10             	push   0x10(%ebp)
43644e:	8b f1                	mov    %ecx,%esi
436450:	6a 00                	push   $0x0
436452:	89 75 f0             	mov    %esi,-0x10(%ebp)
436455:	e8 18 c3 00 00       	call   0x442772
43645a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43645e:	6a 42                	push   $0x42
436460:	8d 46 74             	lea    0x74(%esi),%eax
436463:	6a 00                	push   $0x0
436465:	50                   	push   %eax
436466:	c7 06 3c 1a 49 00    	movl   $0x491a3c,(%esi)
43646c:	89 46 70             	mov    %eax,0x70(%esi)
43646f:	e8 cc 1d fe ff       	call   0x418240
436474:	8b 46 70             	mov    0x70(%esi),%eax
436477:	c7 00 42 00 00 00    	movl   $0x42,(%eax)
43647d:	8b 45 0c             	mov    0xc(%ebp),%eax
436480:	8b 4e 70             	mov    0x70(%esi),%ecx
436483:	0d 00 30 00 00       	or     $0x3000,%eax
436488:	83 c4 0c             	add    $0xc,%esp
43648b:	89 41 14             	mov    %eax,0x14(%ecx)
43648e:	e8 11 c6 00 00       	call   0x442aa4
436493:	85 c0                	test   %eax,%eax
436495:	74 07                	je     0x43649e
436497:	8b 46 70             	mov    0x70(%esi),%eax
43649a:	80 48 15 08          	orb    $0x8,0x15(%eax)
43649e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4364a2:	8b 4e 70             	mov    0x70(%esi),%ecx
4364a5:	b8 d4 5e 43 00       	mov    $0x435ed4,%eax
4364aa:	89 41 2a             	mov    %eax,0x2a(%ecx)
4364ad:	8b 4e 70             	mov    0x70(%esi),%ecx
4364b0:	89 41 2e             	mov    %eax,0x2e(%ecx)
4364b3:	8b 46 70             	mov    0x70(%esi),%eax
4364b6:	74 0d                	je     0x4364c5
4364b8:	c7 46 50 09 70 00 00 	movl   $0x7009,0x50(%esi)
4364bf:	83 48 14 40          	orl    $0x40,0x14(%eax)
4364c3:	eb 0b                	jmp    0x4364d0
4364c5:	c7 46 50 08 70 00 00 	movl   $0x7008,0x50(%esi)
4364cc:	80 48 15 01          	orb    $0x1,0x15(%eax)
4364d0:	8b 46 70             	mov    0x70(%esi),%eax
4364d3:	80 60 15 fd          	andb   $0xfd,0x15(%eax)
4364d7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4364da:	8b c6                	mov    %esi,%eax
4364dc:	5e                   	pop    %esi
4364dd:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4364e4:	c9                   	leave
4364e5:	c2 0c 00             	ret    $0xc
4364e8:	56                   	push   %esi
4364e9:	6a 00                	push   $0x0
4364eb:	6a 00                	push   $0x0
4364ed:	8b f1                	mov    %ecx,%esi
4364ef:	e8 7e c2 00 00       	call   0x442772
4364f4:	8b 44 24 08          	mov    0x8(%esp),%eax
4364f8:	89 46 70             	mov    %eax,0x70(%esi)
4364fb:	c7 06 3c 1a 49 00    	movl   $0x491a3c,(%esi)
436501:	8b c6                	mov    %esi,%eax
436503:	5e                   	pop    %esi
436504:	c2 04 00             	ret    $0x4
436507:	b8 1c 46 48 00       	mov    $0x48461c,%eax
43650c:	e8 6b 17 fe ff       	call   0x417c7c
436511:	51                   	push   %ecx
436512:	56                   	push   %esi
436513:	68 b8 00 00 00       	push   $0xb8
436518:	8b f1                	mov    %ecx,%esi
43651a:	e8 36 9b 00 00       	call   0x440055
43651f:	59                   	pop    %ecx
436520:	8b c8                	mov    %eax,%ecx
436522:	89 4d f0             	mov    %ecx,-0x10(%ebp)
436525:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
436529:	85 c9                	test   %ecx,%ecx
43652b:	74 0a                	je     0x436537
43652d:	ff 76 70             	push   0x70(%esi)
436530:	e8 b3 ff ff ff       	call   0x4364e8
436535:	eb 02                	jmp    0x436539
436537:	33 c0                	xor    %eax,%eax
436539:	83 60 1c 00          	andl   $0x0,0x1c(%eax)
43653d:	8b 4e 64             	mov    0x64(%esi),%ecx
436540:	89 48 64             	mov    %ecx,0x64(%eax)
436543:	8b 4d f4             	mov    -0xc(%ebp),%ecx
436546:	c7 40 50 09 70 00 00 	movl   $0x7009,0x50(%eax)
43654d:	5e                   	pop    %esi
43654e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
436555:	c9                   	leave
436556:	c3                   	ret
436557:	56                   	push   %esi
436558:	8b f1                	mov    %ecx,%esi
43655a:	8b 46 70             	mov    0x70(%esi),%eax
43655d:	ff 70 08             	push   0x8(%eax)
436560:	ff 70 0c             	push   0xc(%eax)
436563:	e8 e1 fd ff ff       	call   0x436349
436568:	8b 4e 70             	mov    0x70(%esi),%ecx
43656b:	89 41 10             	mov    %eax,0x10(%ecx)
43656e:	8b 46 70             	mov    0x70(%esi),%eax
436571:	8b 40 10             	mov    0x10(%eax),%eax
436574:	5e                   	pop    %esi
436575:	c3                   	ret
436576:	8b 41 70             	mov    0x70(%ecx),%eax
436579:	f6 40 16 04          	testb  $0x4,0x16(%eax)
43657d:	74 0a                	je     0x436589
43657f:	e8 a1 fd ff ff       	call   0x436325
436584:	0f bf 40 36          	movswl 0x36(%eax),%eax
436588:	c3                   	ret
436589:	0f b7 40 20          	movzwl 0x20(%eax),%eax
43658d:	c3                   	ret
43658e:	56                   	push   %esi
43658f:	8b f1                	mov    %ecx,%esi
436591:	e8 14 00 00 00       	call   0x4365aa
436596:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
43659b:	74 07                	je     0x4365a4
43659d:	56                   	push   %esi
43659e:	e8 dd 9a 00 00       	call   0x440080
4365a3:	59                   	pop    %ecx
4365a4:	8b c6                	mov    %esi,%eax
4365a6:	5e                   	pop    %esi
4365a7:	c2 04 00             	ret    $0x4
4365aa:	e9 dc c0 00 00       	jmp    0x44268b
4365af:	56                   	push   %esi
4365b0:	8b f1                	mov    %ecx,%esi
4365b2:	e8 14 00 00 00       	call   0x4365cb
4365b7:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4365bc:	74 07                	je     0x4365c5
4365be:	56                   	push   %esi
4365bf:	e8 bc 9a 00 00       	call   0x440080
4365c4:	59                   	pop    %ecx
4365c5:	8b c6                	mov    %esi,%eax
4365c7:	5e                   	pop    %esi
4365c8:	c2 04 00             	ret    $0x4
4365cb:	e9 bb c0 00 00       	jmp    0x44268b
4365d0:	55                   	push   %ebp
4365d1:	8b ec                	mov    %esp,%ebp
4365d3:	51                   	push   %ecx
4365d4:	8b 41 7c             	mov    0x7c(%ecx),%eax
4365d7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4365db:	85 c0                	test   %eax,%eax
4365dd:	75 03                	jne    0x4365e2
4365df:	50                   	push   %eax
4365e0:	eb 0d                	jmp    0x4365ef
4365e2:	50                   	push   %eax
4365e3:	ff 15 40 03 4b 00    	call   *0x4b0340
4365e9:	0f b7 08             	movzwl (%eax),%ecx
4365ec:	03 c8                	add    %eax,%ecx
4365ee:	51                   	push   %ecx
4365ef:	8b 4d 08             	mov    0x8(%ebp),%ecx
4365f2:	e8 9d ac fc ff       	call   0x401294
4365f7:	8b 45 08             	mov    0x8(%ebp),%eax
4365fa:	c9                   	leave
4365fb:	c2 04 00             	ret    $0x4
4365fe:	55                   	push   %ebp
4365ff:	8b ec                	mov    %esp,%ebp
436601:	51                   	push   %ecx
436602:	8b 41 7c             	mov    0x7c(%ecx),%eax
436605:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
436609:	85 c0                	test   %eax,%eax
43660b:	75 03                	jne    0x436610
43660d:	50                   	push   %eax
43660e:	eb 0e                	jmp    0x43661e
436610:	50                   	push   %eax
436611:	ff 15 40 03 4b 00    	call   *0x4b0340
436617:	0f b7 48 02          	movzwl 0x2(%eax),%ecx
43661b:	03 c8                	add    %eax,%ecx
43661d:	51                   	push   %ecx
43661e:	8b 4d 08             	mov    0x8(%ebp),%ecx
436621:	e8 6e ac fc ff       	call   0x401294
436626:	8b 45 08             	mov    0x8(%ebp),%eax
436629:	c9                   	leave
43662a:	c2 04 00             	ret    $0x4
43662d:	55                   	push   %ebp
43662e:	8b ec                	mov    %esp,%ebp