4462b2:	ff 75 14             	push   0x14(%ebp)
4462b5:	ff 15 30 b1 44 00    	call   *0x44b130
4462bb:	03 5d f8             	add    -0x8(%ebp),%ebx
4462be:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4462c2:	74 05                	je     0x4462c9
4462c4:	83 fb 08             	cmp    $0x8,%ebx
4462c7:	72 d9                	jb     0x4462a2
4462c9:	8b 45 28             	mov    0x28(%ebp),%eax
4462cc:	85 c0                	test   %eax,%eax
4462ce:	74 1f                	je     0x4462ef
4462d0:	83 38 00             	cmpl   $0x0,(%eax)
4462d3:	74 1a                	je     0x4462ef
4462d5:	ff 75 0c             	push   0xc(%ebp)
4462d8:	ff 75 1c             	push   0x1c(%ebp)
4462db:	ff 75 18             	push   0x18(%ebp)
4462de:	ff 77 04             	push   0x4(%edi)
4462e1:	ff 37                	push   (%edi)
4462e3:	50                   	push   %eax
4462e4:	e8 5d f8 ff ff       	call   0x445b46
4462e9:	8b f0                	mov    %eax,%esi
4462eb:	85 f6                	test   %esi,%esi
4462ed:	78 60                	js     0x44634f
4462ef:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4462f3:	0f 85 2b ff ff ff    	jne    0x446224
4462f9:	eb 54                	jmp    0x44634f
4462fb:	ff 15 e8 b0 44 00    	call   *0x44b0e8
446301:	0f b7 f0             	movzwl %ax,%esi
446304:	81 ce 00 00 07 80    	or     $0x80070000,%esi
44630a:	85 c0                	test   %eax,%eax
44630c:	0f 4e f0             	cmovle %eax,%esi
44630f:	b8 05 40 00 80       	mov    $0x80004005,%eax
446314:	85 f6                	test   %esi,%esi
446316:	0f 49 f0             	cmovns %eax,%esi
446319:	56                   	push   %esi
44631a:	68 a6 01 00 00       	push   $0x1a6
44631f:	eb 24                	jmp    0x446345
446321:	ff 15 e8 b0 44 00    	call   *0x44b0e8
446327:	0f b7 f0             	movzwl %ax,%esi
44632a:	81 ce 00 00 07 80    	or     $0x80070000,%esi
446330:	85 c0                	test   %eax,%eax
446332:	0f 4e f0             	cmovle %eax,%esi
446335:	b8 05 40 00 80       	mov    $0x80004005,%eax
44633a:	85 f6                	test   %esi,%esi
44633c:	0f 49 f0             	cmovns %eax,%esi
44633f:	56                   	push   %esi
446340:	68 9a 01 00 00       	push   $0x19a
446345:	68 5c 68 46 00       	push   $0x46685c
44634a:	e8 84 d4 fb ff       	call   0x4037d3
44634f:	5b                   	pop    %ebx
446350:	5f                   	pop    %edi
446351:	8b c6                	mov    %esi,%eax
446353:	5e                   	pop    %esi
446354:	8b e5                	mov    %ebp,%esp
446356:	5d                   	pop    %ebp
446357:	c2 24 00             	ret    $0x24
44635a:	55                   	push   %ebp
44635b:	8b ec                	mov    %esp,%ebp
44635d:	83 ec 28             	sub    $0x28,%esp
446360:	83 4d f4 ff          	orl    $0xffffffff,-0xc(%ebp)
446364:	33 c0                	xor    %eax,%eax
446366:	53                   	push   %ebx
446367:	8b 5d 08             	mov    0x8(%ebp),%ebx
44636a:	0f 57 c0             	xorps  %xmm0,%xmm0
44636d:	56                   	push   %esi
44636e:	57                   	push   %edi
44636f:	50                   	push   %eax
446370:	ff 33                	push   (%ebx)
446372:	89 45 f8             	mov    %eax,-0x8(%ebp)
446375:	8b f8                	mov    %eax,%edi
446377:	89 45 fc             	mov    %eax,-0x4(%ebp)
44637a:	89 45 f0             	mov    %eax,-0x10(%ebp)
44637d:	89 45 d8             	mov    %eax,-0x28(%ebp)
446380:	89 45 dc             	mov    %eax,-0x24(%ebp)
446383:	8d 45 f8             	lea    -0x8(%ebp),%eax
446386:	50                   	push   %eax
446387:	66 0f 13 45 e8       	movlpd %xmm0,-0x18(%ebp)
44638c:	66 0f 13 45 e0       	movlpd %xmm0,-0x20(%ebp)
446391:	e8 0f be fb ff       	call   0x4021a5
446396:	8b f0                	mov    %eax,%esi
446398:	85 f6                	test   %esi,%esi
44639a:	0f 88 23 01 00 00    	js     0x4464c3
4463a0:	33 c0                	xor    %eax,%eax
4463a2:	50                   	push   %eax
4463a3:	50                   	push   %eax
4463a4:	50                   	push   %eax
4463a5:	50                   	push   %eax
4463a6:	68 50 68 46 00       	push   $0x466850
4463ab:	ff 15 8c a9 46 00    	call   *0x46a98c
4463b1:	8b f8                	mov    %eax,%edi
4463b3:	85 ff                	test   %edi,%edi
4463b5:	75 33                	jne    0x4463ea
4463b7:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4463bd:	0f b7 f0             	movzwl %ax,%esi
4463c0:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4463c6:	85 c0                	test   %eax,%eax
4463c8:	0f 4e f0             	cmovle %eax,%esi
4463cb:	b8 05 40 00 80       	mov    $0x80004005,%eax
4463d0:	85 f6                	test   %esi,%esi
4463d2:	0f 49 f0             	cmovns %eax,%esi
4463d5:	56                   	push   %esi
4463d6:	68 84 00 00 00       	push   $0x84
4463db:	68 5c 68 46 00       	push   $0x46685c
4463e0:	e8 ee d3 fb ff       	call   0x4037d3
4463e5:	e9 d9 00 00 00       	jmp    0x4464c3
4463ea:	8d 45 fc             	lea    -0x4(%ebp),%eax
4463ed:	50                   	push   %eax
4463ee:	6a 78                	push   $0x78
4463f0:	68 68 68 46 00       	push   $0x466868
4463f5:	68 f8 5e 45 00       	push   $0x455ef8
4463fa:	e8 b3 f2 ff ff       	call   0x4456b2
4463ff:	8b 45 fc             	mov    -0x4(%ebp),%eax
446402:	85 c0                	test   %eax,%eax
446404:	74 30                	je     0x446436
446406:	8b 35 70 a9 46 00    	mov    0x46a970,%esi
44640c:	69 c0 e8 03 00 00    	imul   $0x3e8,%eax,%eax
446412:	6a 04                	push   $0x4
446414:	89 45 fc             	mov    %eax,-0x4(%ebp)
446417:	8d 45 fc             	lea    -0x4(%ebp),%eax
44641a:	50                   	push   %eax
44641b:	6a 02                	push   $0x2
44641d:	57                   	push   %edi
44641e:	ff d6                	call   *%esi
446420:	6a 04                	push   $0x4
446422:	8d 45 fc             	lea    -0x4(%ebp),%eax
446425:	50                   	push   %eax
446426:	6a 06                	push   $0x6
446428:	57                   	push   %edi
446429:	ff d6                	call   *%esi
44642b:	6a 04                	push   $0x4
44642d:	8d 45 fc             	lea    -0x4(%ebp),%eax
446430:	50                   	push   %eax
446431:	6a 05                	push   $0x5
446433:	57                   	push   %edi
446434:	ff d6                	call   *%esi
446436:	8d 45 d8             	lea    -0x28(%ebp),%eax
446439:	50                   	push   %eax
44643a:	8d 45 e0             	lea    -0x20(%ebp),%eax
44643d:	50                   	push   %eax
44643e:	ff 75 1c             	push   0x1c(%ebp)
446441:	8d 45 f8             	lea    -0x8(%ebp),%eax
446444:	ff 73 08             	push   0x8(%ebx)
446447:	ff 73 04             	push   0x4(%ebx)
44644a:	50                   	push   %eax
44644b:	57                   	push   %edi
44644c:	e8 6e f7 ff ff       	call   0x445bbf
446451:	8b f0                	mov    %eax,%esi
446453:	85 f6                	test   %esi,%esi
446455:	78 6c                	js     0x4464c3
446457:	8d 45 e8             	lea    -0x18(%ebp),%eax
44645a:	50                   	push   %eax
44645b:	8d 45 f4             	lea    -0xc(%ebp),%eax
44645e:	50                   	push   %eax
44645f:	8d 45 f0             	lea    -0x10(%ebp),%eax
446462:	50                   	push   %eax
446463:	ff 75 14             	push   0x14(%ebp)
446466:	e8 fd f7 ff ff       	call   0x445c68
44646b:	ff 75 1c             	push   0x1c(%ebp)
44646e:	8d 45 f8             	lea    -0x8(%ebp),%eax
446471:	ff 75 18             	push   0x18(%ebp)
446474:	ff 75 f4             	push   -0xc(%ebp)
446477:	ff 75 ec             	push   -0x14(%ebp)
44647a:	ff 75 e8             	push   -0x18(%ebp)
44647d:	ff 75 e4             	push   -0x1c(%ebp)
446480:	ff 75 e0             	push   -0x20(%ebp)
446483:	ff 75 10             	push   0x10(%ebp)
446486:	ff 75 0c             	push   0xc(%ebp)
446489:	ff 75 14             	push   0x14(%ebp)
44648c:	ff 73 08             	push   0x8(%ebx)
44648f:	ff 73 04             	push   0x4(%ebx)
446492:	50                   	push   %eax
446493:	57                   	push   %edi
446494:	e8 7d f4 ff ff       	call   0x445916
446499:	8b f0                	mov    %eax,%esi
44649b:	85 f6                	test   %esi,%esi
44649d:	78 15                	js     0x4464b4
44649f:	8b 45 f0             	mov    -0x10(%ebp),%eax
4464a2:	85 c0                	test   %eax,%eax
4464a4:	74 0e                	je     0x4464b4
4464a6:	33 c9                	xor    %ecx,%ecx
4464a8:	66 39 08             	cmp    %cx,(%eax)
4464ab:	74 07                	je     0x4464b4
4464ad:	50                   	push   %eax
4464ae:	ff 15 70 b1 44 00    	call   *0x44b170
4464b4:	83 7d f4 ff          	cmpl   $0xffffffff,-0xc(%ebp)
4464b8:	74 09                	je     0x4464c3
4464ba:	ff 75 f4             	push   -0xc(%ebp)
4464bd:	ff 15 d4 b0 44 00    	call   *0x44b0d4
4464c3:	8b 45 f0             	mov    -0x10(%ebp),%eax
4464c6:	85 c0                	test   %eax,%eax
4464c8:	74 06                	je     0x4464d0
4464ca:	50                   	push   %eax
4464cb:	e8 1f f0 ff ff       	call   0x4454ef
4464d0:	85 ff                	test   %edi,%edi
4464d2:	74 07                	je     0x4464db
4464d4:	57                   	push   %edi
4464d5:	ff 15 6c a9 46 00    	call   *0x46a96c
4464db:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4464df:	74 08                	je     0x4464e9
4464e1:	ff 75 f8             	push   -0x8(%ebp)
4464e4:	e8 06 f0 ff ff       	call   0x4454ef
4464e9:	5f                   	pop    %edi
4464ea:	8b c6                	mov    %esi,%eax
4464ec:	5e                   	pop    %esi
4464ed:	5b                   	pop    %ebx
4464ee:	8b e5                	mov    %ebp,%esp
4464f0:	5d                   	pop    %ebp
4464f1:	c2 18 00             	ret    $0x18
4464f4:	55                   	push   %ebp
4464f5:	8b ec                	mov    %esp,%ebp
4464f7:	51                   	push   %ecx
4464f8:	51                   	push   %ecx
4464f9:	56                   	push   %esi
4464fa:	57                   	push   %edi
4464fb:	8d 45 f8             	lea    -0x8(%ebp),%eax
4464fe:	33 ff                	xor    %edi,%edi
446500:	50                   	push   %eax
446501:	ff 75 0c             	push   0xc(%ebp)
446504:	89 7d f8             	mov    %edi,-0x8(%ebp)
446507:	ff 75 08             	push   0x8(%ebp)
44650a:	89 7d fc             	mov    %edi,-0x4(%ebp)
44650d:	e8 f1 d2 ff ff       	call   0x443803
446512:	8b f0                	mov    %eax,%esi
446514:	85 f6                	test   %esi,%esi
446516:	78 5d                	js     0x446575
446518:	75 51                	jne    0x44656b
44651a:	8b 45 f8             	mov    -0x8(%ebp),%eax
44651d:	8d 55 fc             	lea    -0x4(%ebp),%edx
446520:	52                   	push   %edx
446521:	50                   	push   %eax
446522:	8b 08                	mov    (%eax),%ecx
446524:	ff 51 20             	call   *0x20(%ecx)
446527:	8b f0                	mov    %eax,%esi
446529:	85 f6                	test   %esi,%esi
44652b:	78 48                	js     0x446575
44652d:	8b 45 fc             	mov    -0x4(%ebp),%eax
446530:	85 c0                	test   %eax,%eax
446532:	74 41                	je     0x446575
446534:	6b c0 0c             	imul   $0xc,%eax,%eax
446537:	6a 01                	push   $0x1
446539:	50                   	push   %eax
44653a:	e8 95 d3 fb ff       	call   0x4038d4
44653f:	8b d0                	mov    %eax,%edx
446541:	85 d2                	test   %edx,%edx
446543:	75 17                	jne    0x44655c
446545:	be 0e 00 07 80       	mov    $0x8007000e,%esi
44654a:	56                   	push   %esi
44654b:	68 d2 01 00 00       	push   $0x1d2
446550:	68 7c 69 46 00       	push   $0x46697c
446555:	e8 79 d2 fb ff       	call   0x4037d3
44655a:	eb 19                	jmp    0x446575
44655c:	8b 4d 14             	mov    0x14(%ebp),%ecx
44655f:	8b 45 fc             	mov    -0x4(%ebp),%eax
446562:	89 01                	mov    %eax,(%ecx)
446564:	8b 45 10             	mov    0x10(%ebp),%eax
446567:	89 10                	mov    %edx,(%eax)
446569:	eb 0a                	jmp    0x446575
44656b:	8b 45 10             	mov    0x10(%ebp),%eax
44656e:	89 38                	mov    %edi,(%eax)
446570:	8b 45 14             	mov    0x14(%ebp),%eax
446573:	89 38                	mov    %edi,(%eax)
446575:	8b 4d f8             	mov    -0x8(%ebp),%ecx
446578:	85 c9                	test   %ecx,%ecx
44657a:	74 06                	je     0x446582
44657c:	8b 01                	mov    (%ecx),%eax
44657e:	51                   	push   %ecx
44657f:	ff 50 08             	call   *0x8(%eax)
446582:	5f                   	pop    %edi
446583:	8b c6                	mov    %esi,%eax
446585:	5e                   	pop    %esi
446586:	8b e5                	mov    %ebp,%esp
446588:	5d                   	pop    %ebp
446589:	c2 10 00             	ret    $0x10
44658c:	55                   	push   %ebp
44658d:	8b ec                	mov    %esp,%ebp
44658f:	51                   	push   %ecx
446590:	51                   	push   %ecx
446591:	56                   	push   %esi
446592:	57                   	push   %edi
446593:	8d 45 f8             	lea    -0x8(%ebp),%eax
446596:	33 ff                	xor    %edi,%edi
446598:	50                   	push   %eax
446599:	ff 75 0c             	push   0xc(%ebp)
44659c:	89 7d f8             	mov    %edi,-0x8(%ebp)
44659f:	ff 75 08             	push   0x8(%ebp)
4465a2:	89 7d fc             	mov    %edi,-0x4(%ebp)
4465a5:	e8 59 d2 ff ff       	call   0x443803
4465aa:	8b f0                	mov    %eax,%esi
4465ac:	85 f6                	test   %esi,%esi
4465ae:	78 5d                	js     0x44660d
4465b0:	75 51                	jne    0x446603
4465b2:	8b 45 f8             	mov    -0x8(%ebp),%eax
4465b5:	8d 55 fc             	lea    -0x4(%ebp),%edx
4465b8:	52                   	push   %edx
4465b9:	50                   	push   %eax
4465ba:	8b 08                	mov    (%eax),%ecx
4465bc:	ff 51 20             	call   *0x20(%ecx)
4465bf:	8b f0                	mov    %eax,%esi
4465c1:	85 f6                	test   %esi,%esi
4465c3:	78 48                	js     0x44660d
4465c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4465c8:	85 c0                	test   %eax,%eax
4465ca:	74 41                	je     0x44660d
4465cc:	6a 01                	push   $0x1
4465ce:	c1 e0 04             	shl    $0x4,%eax
4465d1:	50                   	push   %eax
4465d2:	e8 fd d2 fb ff       	call   0x4038d4
4465d7:	8b d0                	mov    %eax,%edx
4465d9:	85 d2                	test   %edx,%edx
4465db:	75 17                	jne    0x4465f4
4465dd:	be 0e 00 07 80       	mov    $0x8007000e,%esi
4465e2:	56                   	push   %esi
4465e3:	68 d2 01 00 00       	push   $0x1d2
4465e8:	68 7c 69 46 00       	push   $0x46697c
4465ed:	e8 e1 d1 fb ff       	call   0x4037d3
4465f2:	eb 19                	jmp    0x44660d
4465f4:	8b 4d 14             	mov    0x14(%ebp),%ecx
4465f7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4465fa:	89 01                	mov    %eax,(%ecx)
4465fc:	8b 45 10             	mov    0x10(%ebp),%eax
4465ff:	89 10                	mov    %edx,(%eax)
446601:	eb 0a                	jmp    0x44660d
446603:	8b 45 10             	mov    0x10(%ebp),%eax
446606:	89 38                	mov    %edi,(%eax)
446608:	8b 45 14             	mov    0x14(%ebp),%eax
44660b:	89 38                	mov    %edi,(%eax)
44660d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
446610:	85 c9                	test   %ecx,%ecx
446612:	74 06                	je     0x44661a
446614:	8b 01                	mov    (%ecx),%eax
446616:	51                   	push   %ecx
446617:	ff 50 08             	call   *0x8(%eax)
44661a:	5f                   	pop    %edi
44661b:	8b c6                	mov    %esi,%eax
44661d:	5e                   	pop    %esi
44661e:	8b e5                	mov    %ebp,%esp
446620:	5d                   	pop    %ebp
446621:	c2 10 00             	ret    $0x10
446624:	55                   	push   %ebp
446625:	8b ec                	mov    %esp,%ebp
446627:	51                   	push   %ecx
446628:	51                   	push   %ecx
446629:	56                   	push   %esi
44662a:	57                   	push   %edi
44662b:	8d 45 f8             	lea    -0x8(%ebp),%eax
44662e:	33 ff                	xor    %edi,%edi
446630:	50                   	push   %eax
446631:	ff 75 0c             	push   0xc(%ebp)
446634:	89 7d f8             	mov    %edi,-0x8(%ebp)
446637:	ff 75 08             	push   0x8(%ebp)
44663a:	89 7d fc             	mov    %edi,-0x4(%ebp)