4301f2:	85 ff                	test   %edi,%edi
4301f4:	74 52                	je     0x430248
4301f6:	8d 04 39             	lea    (%ecx,%edi,1),%eax
4301f9:	51                   	push   %ecx
4301fa:	50                   	push   %eax
4301fb:	8b ce                	mov    %esi,%ecx
4301fd:	89 45 fc             	mov    %eax,-0x4(%ebp)
430200:	e8 2c fe ff ff       	call   0x430031
430205:	84 c0                	test   %al,%al
430207:	74 3f                	je     0x430248
430209:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
43020d:	72 02                	jb     0x430211
43020f:	8b 1b                	mov    (%ebx),%ebx
430211:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
430215:	72 04                	jb     0x43021b
430217:	8b 0e                	mov    (%esi),%ecx
430219:	eb 02                	jmp    0x43021d
43021b:	8b ce                	mov    %esi,%ecx
43021d:	8b 45 0c             	mov    0xc(%ebp),%eax
430220:	57                   	push   %edi
430221:	8d 14 43             	lea    (%ebx,%eax,2),%edx
430224:	8b 46 10             	mov    0x10(%esi),%eax
430227:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
43022a:	e8 b2 02 00 00       	call   0x4304e1
43022f:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
430233:	59                   	pop    %ecx
430234:	8b 4d fc             	mov    -0x4(%ebp),%ecx
430237:	89 4e 10             	mov    %ecx,0x10(%esi)
43023a:	72 04                	jb     0x430240
43023c:	8b 06                	mov    (%esi),%eax
43023e:	eb 02                	jmp    0x430242
430240:	8b c6                	mov    %esi,%eax
430242:	33 d2                	xor    %edx,%edx
430244:	66 89 14 48          	mov    %dx,(%eax,%ecx,2)
430248:	5f                   	pop    %edi
430249:	8b c6                	mov    %esi,%eax
43024b:	5e                   	pop    %esi
43024c:	5b                   	pop    %ebx
43024d:	c9                   	leave
43024e:	c2 0c 00             	ret    $0xc
430251:	8b ff                	mov    %edi,%edi
430253:	55                   	push   %ebp
430254:	8b ec                	mov    %esp,%ebp
430256:	51                   	push   %ecx
430257:	56                   	push   %esi
430258:	57                   	push   %edi
430259:	8b 7d 08             	mov    0x8(%ebp),%edi
43025c:	8b f1                	mov    %ecx,%esi
43025e:	57                   	push   %edi
43025f:	e8 4e fe ff ff       	call   0x4300b2
430264:	84 c0                	test   %al,%al
430266:	74 1c                	je     0x430284
430268:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
43026c:	72 04                	jb     0x430272
43026e:	8b 06                	mov    (%esi),%eax
430270:	eb 02                	jmp    0x430274
430272:	8b c6                	mov    %esi,%eax
430274:	ff 75 0c             	push   0xc(%ebp)
430277:	2b f8                	sub    %eax,%edi
430279:	d1 ff                	sar    $1,%edi
43027b:	57                   	push   %edi
43027c:	56                   	push   %esi
43027d:	e8 38 ff ff ff       	call   0x4301ba
430282:	eb 61                	jmp    0x4302e5
430284:	8b 4e 10             	mov    0x10(%esi),%ecx
430287:	8b c1                	mov    %ecx,%eax
430289:	53                   	push   %ebx
43028a:	8b 5d 0c             	mov    0xc(%ebp),%ebx
43028d:	f7 d0                	not    %eax
43028f:	3b c3                	cmp    %ebx,%eax
430291:	77 05                	ja     0x430298
430293:	e8 0c ff ff ff       	call   0x4301a4
430298:	85 db                	test   %ebx,%ebx
43029a:	74 46                	je     0x4302e2
43029c:	8d 04 19             	lea    (%ecx,%ebx,1),%eax
43029f:	51                   	push   %ecx
4302a0:	50                   	push   %eax
4302a1:	8b ce                	mov    %esi,%ecx
4302a3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4302a6:	e8 86 fd ff ff       	call   0x430031
4302ab:	84 c0                	test   %al,%al
4302ad:	74 33                	je     0x4302e2
4302af:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
4302b3:	72 04                	jb     0x4302b9
4302b5:	8b 0e                	mov    (%esi),%ecx
4302b7:	eb 02                	jmp    0x4302bb
4302b9:	8b ce                	mov    %esi,%ecx
4302bb:	8b 46 10             	mov    0x10(%esi),%eax
4302be:	8b d7                	mov    %edi,%edx
4302c0:	53                   	push   %ebx
4302c1:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
4302c4:	e8 18 02 00 00       	call   0x4304e1
4302c9:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
4302cd:	59                   	pop    %ecx
4302ce:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4302d1:	89 4e 10             	mov    %ecx,0x10(%esi)
4302d4:	72 04                	jb     0x4302da
4302d6:	8b 06                	mov    (%esi),%eax
4302d8:	eb 02                	jmp    0x4302dc
4302da:	8b c6                	mov    %esi,%eax
4302dc:	33 d2                	xor    %edx,%edx
4302de:	66 89 14 48          	mov    %dx,(%eax,%ecx,2)
4302e2:	8b c6                	mov    %esi,%eax
4302e4:	5b                   	pop    %ebx
4302e5:	5f                   	pop    %edi
4302e6:	5e                   	pop    %esi
4302e7:	c9                   	leave
4302e8:	c2 08 00             	ret    $0x8
4302eb:	8b ff                	mov    %edi,%edi
4302ed:	55                   	push   %ebp
4302ee:	8b ec                	mov    %esp,%ebp
4302f0:	8b 45 0c             	mov    0xc(%ebp),%eax
4302f3:	53                   	push   %ebx
4302f4:	8b 5d 08             	mov    0x8(%ebp),%ebx
4302f7:	56                   	push   %esi
4302f8:	57                   	push   %edi
4302f9:	8b f1                	mov    %ecx,%esi
4302fb:	8b 7b 10             	mov    0x10(%ebx),%edi
4302fe:	3b f8                	cmp    %eax,%edi
430300:	73 05                	jae    0x430307
430302:	e8 a8 fe ff ff       	call   0x4301af
430307:	2b f8                	sub    %eax,%edi
430309:	39 7d 10             	cmp    %edi,0x10(%ebp)
43030c:	73 03                	jae    0x430311
43030e:	8b 7d 10             	mov    0x10(%ebp),%edi
430311:	3b f3                	cmp    %ebx,%esi
430313:	75 17                	jne    0x43032c
430315:	03 c7                	add    %edi,%eax
430317:	50                   	push   %eax
430318:	e8 86 02 00 00       	call   0x4305a3
43031d:	8b 45 0c             	mov    0xc(%ebp),%eax
430320:	8b ce                	mov    %esi,%ecx
430322:	50                   	push   %eax
430323:	6a 00                	push   $0x0
430325:	e8 9b 02 00 00       	call   0x4305c5
43032a:	eb 3c                	jmp    0x430368
43032c:	6a 00                	push   $0x0
43032e:	57                   	push   %edi
43032f:	e8 a8 fc ff ff       	call   0x42ffdc
430334:	84 c0                	test   %al,%al
430336:	74 30                	je     0x430368
430338:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
43033c:	72 02                	jb     0x430340
43033e:	8b 1b                	mov    (%ebx),%ebx
430340:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
430344:	72 04                	jb     0x43034a
430346:	8b 0e                	mov    (%esi),%ecx
430348:	eb 02                	jmp    0x43034c
43034a:	8b ce                	mov    %esi,%ecx
43034c:	85 ff                	test   %edi,%edi
43034e:	74 10                	je     0x430360
430350:	8b 45 0c             	mov    0xc(%ebp),%eax
430353:	57                   	push   %edi
430354:	03 c3                	add    %ebx,%eax
430356:	50                   	push   %eax
430357:	51                   	push   %ecx
430358:	e8 e8 f3 fe ff       	call   0x41f745
43035d:	83 c4 0c             	add    $0xc,%esp
430360:	57                   	push   %edi
430361:	8b ce                	mov    %esi,%ecx
430363:	e8 59 fc ff ff       	call   0x42ffc1
430368:	5f                   	pop    %edi
430369:	8b c6                	mov    %esi,%eax
43036b:	5e                   	pop    %esi
43036c:	5b                   	pop    %ebx
43036d:	5d                   	pop    %ebp
43036e:	c2 0c 00             	ret    $0xc
430371:	8b ff                	mov    %edi,%edi
430373:	55                   	push   %ebp
430374:	8b ec                	mov    %esp,%ebp
430376:	53                   	push   %ebx
430377:	8b 5d 08             	mov    0x8(%ebp),%ebx
43037a:	56                   	push   %esi
43037b:	53                   	push   %ebx
43037c:	8b f1                	mov    %ecx,%esi
43037e:	e8 f2 fc ff ff       	call   0x430075
430383:	84 c0                	test   %al,%al
430385:	74 1c                	je     0x4303a3
430387:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
43038b:	72 04                	jb     0x430391
43038d:	8b 06                	mov    (%esi),%eax
43038f:	eb 02                	jmp    0x430393
430391:	8b c6                	mov    %esi,%eax
430393:	ff 75 0c             	push   0xc(%ebp)
430396:	2b d8                	sub    %eax,%ebx
430398:	8b ce                	mov    %esi,%ecx
43039a:	53                   	push   %ebx
43039b:	56                   	push   %esi
43039c:	e8 4a ff ff ff       	call   0x4302eb
4303a1:	eb 38                	jmp    0x4303db
4303a3:	57                   	push   %edi
4303a4:	8b 7d 0c             	mov    0xc(%ebp),%edi
4303a7:	8b ce                	mov    %esi,%ecx
4303a9:	6a 00                	push   $0x0
4303ab:	57                   	push   %edi
4303ac:	e8 2b fc ff ff       	call   0x42ffdc
4303b1:	84 c0                	test   %al,%al
4303b3:	74 23                	je     0x4303d8
4303b5:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4303b9:	72 04                	jb     0x4303bf
4303bb:	8b 06                	mov    (%esi),%eax
4303bd:	eb 02                	jmp    0x4303c1
4303bf:	8b c6                	mov    %esi,%eax
4303c1:	85 ff                	test   %edi,%edi
4303c3:	74 0b                	je     0x4303d0
4303c5:	57                   	push   %edi
4303c6:	53                   	push   %ebx
4303c7:	50                   	push   %eax
4303c8:	e8 78 f3 fe ff       	call   0x41f745
4303cd:	83 c4 0c             	add    $0xc,%esp
4303d0:	57                   	push   %edi
4303d1:	8b ce                	mov    %esi,%ecx
4303d3:	e8 e9 fb ff ff       	call   0x42ffc1
4303d8:	8b c6                	mov    %esi,%eax
4303da:	5f                   	pop    %edi
4303db:	5e                   	pop    %esi
4303dc:	5b                   	pop    %ebx
4303dd:	5d                   	pop    %ebp
4303de:	c2 08 00             	ret    $0x8
4303e1:	8b ff                	mov    %edi,%edi
4303e3:	55                   	push   %ebp
4303e4:	8b ec                	mov    %esp,%ebp
4303e6:	8b 45 0c             	mov    0xc(%ebp),%eax
4303e9:	53                   	push   %ebx
4303ea:	8b 5d 08             	mov    0x8(%ebp),%ebx
4303ed:	56                   	push   %esi
4303ee:	57                   	push   %edi
4303ef:	8b f1                	mov    %ecx,%esi
4303f1:	8b 7b 10             	mov    0x10(%ebx),%edi
4303f4:	3b f8                	cmp    %eax,%edi
4303f6:	73 05                	jae    0x4303fd
4303f8:	e8 b2 fd ff ff       	call   0x4301af
4303fd:	2b f8                	sub    %eax,%edi
4303ff:	39 7d 10             	cmp    %edi,0x10(%ebp)
430402:	73 03                	jae    0x430407
430404:	8b 7d 10             	mov    0x10(%ebp),%edi
430407:	3b f3                	cmp    %ebx,%esi
430409:	75 16                	jne    0x430421
43040b:	03 c7                	add    %edi,%eax
43040d:	50                   	push   %eax
43040e:	e8 1c 02 00 00       	call   0x43062f
430413:	8b 45 0c             	mov    0xc(%ebp),%eax
430416:	50                   	push   %eax
430417:	51                   	push   %ecx
430418:	8b ce                	mov    %esi,%ecx
43041a:	e8 3f 02 00 00       	call   0x43065e
43041f:	eb 41                	jmp    0x430462
430421:	51                   	push   %ecx
430422:	57                   	push   %edi
430423:	e8 09 fc ff ff       	call   0x430031
430428:	84 c0                	test   %al,%al
43042a:	74 36                	je     0x430462
43042c:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
430430:	72 02                	jb     0x430434
430432:	8b 1b                	mov    (%ebx),%ebx
430434:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
430438:	72 04                	jb     0x43043e
43043a:	8b 0e                	mov    (%esi),%ecx
43043c:	eb 02                	jmp    0x430440
43043e:	8b ce                	mov    %esi,%ecx
430440:	8b 45 0c             	mov    0xc(%ebp),%eax
430443:	57                   	push   %edi
430444:	8d 14 43             	lea    (%ebx,%eax,2),%edx
430447:	e8 95 00 00 00       	call   0x4304e1
43044c:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
430450:	59                   	pop    %ecx
430451:	89 7e 10             	mov    %edi,0x10(%esi)
430454:	72 04                	jb     0x43045a
430456:	8b 06                	mov    (%esi),%eax
430458:	eb 02                	jmp    0x43045c
43045a:	8b c6                	mov    %esi,%eax
43045c:	33 c9                	xor    %ecx,%ecx
43045e:	66 89 0c 78          	mov    %cx,(%eax,%edi,2)
430462:	5f                   	pop    %edi
430463:	8b c6                	mov    %esi,%eax
430465:	5e                   	pop    %esi
430466:	5b                   	pop    %ebx
430467:	5d                   	pop    %ebp
430468:	c2 0c 00             	ret    $0xc
43046b:	8b ff                	mov    %edi,%edi
43046d:	55                   	push   %ebp
43046e:	8b ec                	mov    %esp,%ebp
430470:	56                   	push   %esi
430471:	57                   	push   %edi
430472:	bf 24 7b 40 00       	mov    $0x407b24,%edi
430477:	8b f1                	mov    %ecx,%esi
430479:	57                   	push   %edi
43047a:	e8 33 fc ff ff       	call   0x4300b2
43047f:	84 c0                	test   %al,%al
430481:	74 1c                	je     0x43049f
430483:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
430487:	72 04                	jb     0x43048d
430489:	8b 06                	mov    (%esi),%eax
43048b:	eb 02                	jmp    0x43048f
43048d:	8b c6                	mov    %esi,%eax
43048f:	ff 75 0c             	push   0xc(%ebp)
430492:	2b f8                	sub    %eax,%edi
430494:	d1 ff                	sar    $1,%edi
430496:	57                   	push   %edi
430497:	56                   	push   %esi
430498:	e8 44 ff ff ff       	call   0x4303e1
43049d:	eb 3c                	jmp    0x4304db
43049f:	53                   	push   %ebx
4304a0:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4304a3:	51                   	push   %ecx
4304a4:	53                   	push   %ebx
4304a5:	e8 87 fb ff ff       	call   0x430031
4304aa:	84 c0                	test   %al,%al
4304ac:	74 2a                	je     0x4304d8
4304ae:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
4304b2:	72 04                	jb     0x4304b8
4304b4:	8b 0e                	mov    (%esi),%ecx
4304b6:	eb 02                	jmp    0x4304ba
4304b8:	8b ce                	mov    %esi,%ecx
4304ba:	53                   	push   %ebx
4304bb:	8b d7                	mov    %edi,%edx
4304bd:	e8 1f 00 00 00       	call   0x4304e1
4304c2:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
4304c6:	59                   	pop    %ecx
4304c7:	89 5e 10             	mov    %ebx,0x10(%esi)
4304ca:	72 04                	jb     0x4304d0
4304cc:	8b 06                	mov    (%esi),%eax
4304ce:	eb 02                	jmp    0x4304d2
4304d0:	8b c6                	mov    %esi,%eax
4304d2:	33 c9                	xor    %ecx,%ecx
4304d4:	66 89 0c 58          	mov    %cx,(%eax,%ebx,2)
4304d8:	8b c6                	mov    %esi,%eax
4304da:	5b                   	pop    %ebx
4304db:	5f                   	pop    %edi
4304dc:	5e                   	pop    %esi
4304dd:	5d                   	pop    %ebp
4304de:	c2 08 00             	ret    $0x8
4304e1:	8b ff                	mov    %edi,%edi
4304e3:	55                   	push   %ebp
4304e4:	8b ec                	mov    %esp,%ebp
4304e6:	8b 45 08             	mov    0x8(%ebp),%eax
4304e9:	85 c0                	test   %eax,%eax
4304eb:	74 0f                	je     0x4304fc
4304ed:	03 c0                	add    %eax,%eax
4304ef:	50                   	push   %eax
4304f0:	52                   	push   %edx
4304f1:	51                   	push   %ecx
4304f2:	e8 4e f2 fe ff       	call   0x41f745
4304f7:	83 c4 0c             	add    $0xc,%esp
4304fa:	8b c8                	mov    %eax,%ecx
4304fc:	8b c1                	mov    %ecx,%eax
4304fe:	5d                   	pop    %ebp
4304ff:	c3                   	ret
430500:	8b ff                	mov    %edi,%edi
430502:	55                   	push   %ebp