410126:	57                   	push   %edi
410127:	8b f0                	mov    %eax,%esi
410129:	89 45 ec             	mov    %eax,-0x14(%ebp)
41012c:	8b f8                	mov    %eax,%edi
41012e:	89 45 e8             	mov    %eax,-0x18(%ebp)
410131:	89 45 f4             	mov    %eax,-0xc(%ebp)
410134:	8b d9                	mov    %ecx,%ebx
410136:	8b 4d 08             	mov    0x8(%ebp),%ecx
410139:	89 45 f8             	mov    %eax,-0x8(%ebp)
41013c:	89 45 f0             	mov    %eax,-0x10(%ebp)
41013f:	8d 45 f0             	lea    -0x10(%ebp),%eax
410142:	50                   	push   %eax
410143:	89 75 fc             	mov    %esi,-0x4(%ebp)
410146:	e8 8b 10 00 00       	call   0x4111d6
41014b:	85 c0                	test   %eax,%eax
41014d:	0f 84 0e 02 00 00    	je     0x410361
410153:	ff 75 f0             	push   -0x10(%ebp)
410156:	8d 73 3c             	lea    0x3c(%ebx),%esi
410159:	8b ce                	mov    %esi,%ecx
41015b:	e8 40 97 ff ff       	call   0x4098a0
410160:	ff 36                	push   (%esi)
410162:	ff 15 7c 61 41 00    	call   *0x41617c
410168:	85 c0                	test   %eax,%eax
41016a:	75 64                	jne    0x4101d0
41016c:	b8 57 00 07 80       	mov    $0x80070057,%eax
410171:	50                   	push   %eax
410172:	68 48 43 40 00       	push   $0x404348
410177:	68 77 02 00 00       	push   $0x277
41017c:	68 20 41 40 00       	push   $0x404120
410181:	51                   	push   %ecx
410182:	8b f8                	mov    %eax,%edi
410184:	e8 49 0e 00 00       	call   0x410fd2
410189:	8b 75 fc             	mov    -0x4(%ebp),%esi
41018c:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
410190:	74 09                	je     0x41019b
410192:	ff 75 f4             	push   -0xc(%ebp)
410195:	ff 15 74 60 41 00    	call   *0x416074
41019b:	85 f6                	test   %esi,%esi
41019d:	74 10                	je     0x4101af
41019f:	56                   	push   %esi
4101a0:	6a 00                	push   $0x0
4101a2:	ff 15 e0 60 41 00    	call   *0x4160e0
4101a8:	50                   	push   %eax
4101a9:	ff 15 e4 60 41 00    	call   *0x4160e4
4101af:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
4101b3:	74 12                	je     0x4101c7
4101b5:	ff 75 f0             	push   -0x10(%ebp)
4101b8:	6a 00                	push   $0x0
4101ba:	ff 15 e0 60 41 00    	call   *0x4160e0
4101c0:	50                   	push   %eax
4101c1:	ff 15 e4 60 41 00    	call   *0x4160e4
4101c7:	8b c7                	mov    %edi,%eax
4101c9:	5f                   	pop    %edi
4101ca:	5e                   	pop    %esi
4101cb:	5b                   	pop    %ebx
4101cc:	c9                   	leave
4101cd:	c2 04 00             	ret    $0x4
4101d0:	8b 4d 08             	mov    0x8(%ebp),%ecx
4101d3:	8d 45 fc             	lea    -0x4(%ebp),%eax
4101d6:	50                   	push   %eax
4101d7:	ba 48 28 40 00       	mov    $0x402848,%edx
4101dc:	e8 f5 0f 00 00       	call   0x4111d6
4101e1:	85 c0                	test   %eax,%eax
4101e3:	74 1e                	je     0x410203
4101e5:	ff 75 fc             	push   -0x4(%ebp)
4101e8:	8d 4b 40             	lea    0x40(%ebx),%ecx
4101eb:	e8 b0 96 ff ff       	call   0x4098a0
4101f0:	ff 73 40             	push   0x40(%ebx)
4101f3:	ff 15 7c 61 41 00    	call   *0x41617c
4101f9:	85 c0                	test   %eax,%eax
4101fb:	75 0f                	jne    0x41020c
4101fd:	8d 43 3c             	lea    0x3c(%ebx),%eax
410200:	50                   	push   %eax
410201:	eb 01                	jmp    0x410204
410203:	56                   	push   %esi
410204:	8d 4b 44             	lea    0x44(%ebx),%ecx
410207:	e8 37 ea ff ff       	call   0x40ec43
41020c:	ff 73 40             	push   0x40(%ebx)
41020f:	ff 15 7c 61 41 00    	call   *0x41617c
410215:	89 45 ec             	mov    %eax,-0x14(%ebp)
410218:	85 c0                	test   %eax,%eax
41021a:	0f 84 69 ff ff ff    	je     0x410189
410220:	33 f6                	xor    %esi,%esi
410222:	39 73 24             	cmp    %esi,0x24(%ebx)
410225:	75 15                	jne    0x41023c
410227:	b8 03 40 00 80       	mov    $0x80004003,%eax
41022c:	50                   	push   %eax
41022d:	68 48 43 40 00       	push   $0x404348
410232:	68 a5 02 00 00       	push   $0x2a5
410237:	e9 40 ff ff ff       	jmp    0x41017c
41023c:	39 73 28             	cmp    %esi,0x28(%ebx)
41023f:	75 15                	jne    0x410256
410241:	b8 03 40 00 80       	mov    $0x80004003,%eax
410246:	50                   	push   %eax
410247:	68 48 43 40 00       	push   $0x404348
41024c:	68 a6 02 00 00       	push   $0x2a6
410251:	e9 26 ff ff ff       	jmp    0x41017c
410256:	8d 4d ec             	lea    -0x14(%ebp),%ecx
410259:	51                   	push   %ecx
41025a:	8d 4d f8             	lea    -0x8(%ebp),%ecx
41025d:	51                   	push   %ecx
41025e:	50                   	push   %eax
41025f:	ff 73 40             	push   0x40(%ebx)
410262:	e8 f1 fc ff ff       	call   0x40ff58
410267:	8b f8                	mov    %eax,%edi
410269:	85 ff                	test   %edi,%edi
41026b:	79 1e                	jns    0x41028b
41026d:	57                   	push   %edi
41026e:	68 48 43 40 00       	push   $0x404348
410273:	68 ac 02 00 00       	push   $0x2ac
410278:	68 20 41 40 00       	push   $0x404120
41027d:	51                   	push   %ecx
41027e:	e8 4f 0d 00 00       	call   0x410fd2
410283:	8b 75 f8             	mov    -0x8(%ebp),%esi
410286:	e9 c1 00 00 00       	jmp    0x41034c
41028b:	8d 45 f4             	lea    -0xc(%ebp),%eax
41028e:	50                   	push   %eax
41028f:	56                   	push   %esi
410290:	ff 73 28             	push   0x28(%ebx)
410293:	8b 75 f8             	mov    -0x8(%ebp),%esi
410296:	ff 75 ec             	push   -0x14(%ebp)
410299:	56                   	push   %esi
41029a:	ff 73 24             	push   0x24(%ebx)
41029d:	ff 15 8c 60 41 00    	call   *0x41608c
4102a3:	85 c0                	test   %eax,%eax
4102a5:	75 20                	jne    0x4102c7
4102a7:	50                   	push   %eax
4102a8:	68 48 43 40 00       	push   $0x404348
4102ad:	68 b4 02 00 00       	push   $0x2b4
4102b2:	68 20 41 40 00       	push   $0x404120
4102b7:	51                   	push   %ecx
4102b8:	e8 15 0d 00 00       	call   0x410fd2
4102bd:	bf 05 40 00 80       	mov    $0x80004005,%edi
4102c2:	e9 85 00 00 00       	jmp    0x41034c
4102c7:	56                   	push   %esi
4102c8:	ff 15 bc 62 41 00    	call   *0x4162bc
4102ce:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4102d2:	59                   	pop    %ecx
4102d3:	ff 73 3c             	push   0x3c(%ebx)
4102d6:	ff 15 7c 61 41 00    	call   *0x41617c
4102dc:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4102df:	51                   	push   %ecx
4102e0:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4102e3:	51                   	push   %ecx
4102e4:	50                   	push   %eax
4102e5:	ff 73 3c             	push   0x3c(%ebx)
4102e8:	e8 6b fc ff ff       	call   0x40ff58
4102ed:	8b f8                	mov    %eax,%edi
4102ef:	85 ff                	test   %edi,%edi
4102f1:	79 10                	jns    0x410303
4102f3:	57                   	push   %edi
4102f4:	68 48 43 40 00       	push   $0x404348
4102f9:	68 c0 02 00 00       	push   $0x2c0
4102fe:	e9 75 ff ff ff       	jmp    0x410278
410303:	8b 75 f8             	mov    -0x8(%ebp),%esi
410306:	8d 45 e8             	lea    -0x18(%ebp),%eax
410309:	50                   	push   %eax
41030a:	56                   	push   %esi
41030b:	6a 00                	push   $0x0
41030d:	6a 01                	push   $0x1
41030f:	6a 00                	push   $0x0
410311:	ff 75 f4             	push   -0xc(%ebp)
410314:	ff 15 90 60 41 00    	call   *0x416090
41031a:	85 c0                	test   %eax,%eax
41031c:	75 0d                	jne    0x41032b
41031e:	50                   	push   %eax
41031f:	68 48 43 40 00       	push   $0x404348
410324:	68 c8 02 00 00       	push   $0x2c8
410329:	eb 87                	jmp    0x4102b2
41032b:	ff 75 e8             	push   -0x18(%ebp)
41032e:	56                   	push   %esi
41032f:	ff 15 a8 61 41 00    	call   *0x4161a8
410335:	89 45 f8             	mov    %eax,-0x8(%ebp)
410338:	39 43 44             	cmp    %eax,0x44(%ebx)
41033b:	74 0f                	je     0x41034c
41033d:	ff 73 44             	push   0x44(%ebx)
410340:	ff 15 b8 61 41 00    	call   *0x4161b8
410346:	8b 45 f8             	mov    -0x8(%ebp),%eax
410349:	89 43 44             	mov    %eax,0x44(%ebx)
41034c:	85 f6                	test   %esi,%esi
41034e:	0f 84 35 fe ff ff    	je     0x410189
410354:	56                   	push   %esi
410355:	ff 15 bc 62 41 00    	call   *0x4162bc
41035b:	59                   	pop    %ecx
41035c:	e9 28 fe ff ff       	jmp    0x410189
410361:	b8 57 00 07 80       	mov    $0x80070057,%eax
410366:	50                   	push   %eax
410367:	68 48 43 40 00       	push   $0x404348
41036c:	68 80 02 00 00       	push   $0x280
410371:	68 20 41 40 00       	push   $0x404120
410376:	51                   	push   %ecx
410377:	8b f8                	mov    %eax,%edi
410379:	e8 54 0c 00 00       	call   0x410fd2
41037e:	e9 09 fe ff ff       	jmp    0x41018c
410383:	68 8c 00 00 00       	push   $0x8c
410388:	b8 3d 31 41 00       	mov    $0x41313d,%eax
41038d:	e8 ff 21 00 00       	call   0x412591
410392:	8b d9                	mov    %ecx,%ebx
410394:	89 5d 80             	mov    %ebx,-0x80(%ebp)
410397:	8b 45 08             	mov    0x8(%ebp),%eax
41039a:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
4103a0:	8b 45 0c             	mov    0xc(%ebp),%eax
4103a3:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
4103a9:	33 c0                	xor    %eax,%eax
4103ab:	8b f0                	mov    %eax,%esi
4103ad:	89 45 94             	mov    %eax,-0x6c(%ebp)
4103b0:	89 45 8c             	mov    %eax,-0x74(%ebp)
4103b3:	89 45 88             	mov    %eax,-0x78(%ebp)
4103b6:	89 75 98             	mov    %esi,-0x68(%ebp)
4103b9:	89 45 fc             	mov    %eax,-0x4(%ebp)
4103bc:	50                   	push   %eax
4103bd:	89 45 84             	mov    %eax,-0x7c(%ebp)
4103c0:	e8 93 f6 ff ff       	call   0x40fa58
4103c5:	8b f8                	mov    %eax,%edi
4103c7:	85 ff                	test   %edi,%edi
4103c9:	0f 88 44 03 00 00    	js     0x410713
4103cf:	ff 73 38             	push   0x38(%ebx)
4103d2:	ff 15 7c 61 41 00    	call   *0x41617c
4103d8:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
4103db:	89 45 84             	mov    %eax,-0x7c(%ebp)
4103de:	51                   	push   %ecx
4103df:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
4103e2:	51                   	push   %ecx
4103e3:	50                   	push   %eax
4103e4:	ff 73 38             	push   0x38(%ebx)
4103e7:	e8 6c fb ff ff       	call   0x40ff58
4103ec:	8b f8                	mov    %eax,%edi
4103ee:	85 ff                	test   %edi,%edi
4103f0:	79 1e                	jns    0x410410
4103f2:	57                   	push   %edi
4103f3:	68 98 43 40 00       	push   $0x404398
4103f8:	68 16 03 00 00       	push   $0x316
4103fd:	68 20 41 40 00       	push   $0x404120
410402:	51                   	push   %ecx
410403:	e8 ca 0b 00 00       	call   0x410fd2
410408:	8b 5d 94             	mov    -0x6c(%ebp),%ebx
41040b:	e9 d6 02 00 00       	jmp    0x4106e6
410410:	8b 7d 80             	mov    -0x80(%ebp),%edi
410413:	8d 43 28             	lea    0x28(%ebx),%eax
410416:	8b 5d 94             	mov    -0x6c(%ebp),%ebx
410419:	50                   	push   %eax
41041a:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
410420:	33 c0                	xor    %eax,%eax
410422:	50                   	push   %eax
410423:	50                   	push   %eax
410424:	ff 75 84             	push   -0x7c(%ebp)
410427:	53                   	push   %ebx
410428:	ff 77 24             	push   0x24(%edi)
41042b:	ff 15 8c 60 41 00    	call   *0x41608c
410431:	85 c0                	test   %eax,%eax
410433:	75 30                	jne    0x410465
410435:	ff 15 68 61 41 00    	call   *0x416168
41043b:	8b f8                	mov    %eax,%edi
41043d:	85 ff                	test   %edi,%edi
41043f:	7e 09                	jle    0x41044a
410441:	0f b7 ff             	movzwl %di,%edi
410444:	81 cf 00 00 07 80    	or     $0x80070000,%edi
41044a:	57                   	push   %edi
41044b:	68 98 43 40 00       	push   $0x404398
410450:	68 21 03 00 00       	push   $0x321
410455:	68 20 41 40 00       	push   $0x404120
41045a:	51                   	push   %ecx
41045b:	e8 72 0b 00 00       	call   0x410fd2
410460:	e9 81 02 00 00       	jmp    0x4106e6
410465:	8d 47 2c             	lea    0x2c(%edi),%eax
410468:	50                   	push   %eax
410469:	6a 01                	push   $0x1
41046b:	68 02 66 00 00       	push   $0x6602
410470:	ff 77 24             	push   0x24(%edi)
410473:	89 45 94             	mov    %eax,-0x6c(%ebp)
410476:	ff 15 84 60 41 00    	call   *0x416084
41047c:	85 c0                	test   %eax,%eax
41047e:	75 22                	jne    0x4104a2
410480:	ff 15 68 61 41 00    	call   *0x416168
410486:	8b f8                	mov    %eax,%edi
410488:	85 ff                	test   %edi,%edi
41048a:	7e 09                	jle    0x410495
41048c:	0f b7 ff             	movzwl %di,%edi
41048f:	81 cf 00 00 07 80    	or     $0x80070000,%edi
410495:	57                   	push   %edi
410496:	68 98 43 40 00       	push   $0x404398
41049b:	68 2e 03 00 00       	push   $0x32e
4104a0:	eb b3                	jmp    0x410455
4104a2:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
4104a8:	50                   	push   %eax
4104a9:	8d 45 8c             	lea    -0x74(%ebp),%eax
4104ac:	50                   	push   %eax
4104ad:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
4104b3:	6a 01                	push   $0x1
4104b5:	ff 30                	push   (%eax)
4104b7:	8b 45 94             	mov    -0x6c(%ebp),%eax
4104ba:	ff 30                	push   (%eax)
4104bc:	e8 6f f8 ff ff       	call   0x40fd30
4104c1:	8b f8                	mov    %eax,%edi
4104c3:	85 ff                	test   %edi,%edi
4104c5:	79 0d                	jns    0x4104d4
4104c7:	57                   	push   %edi
4104c8:	68 98 43 40 00       	push   $0x404398
4104cd:	68 38 03 00 00       	push   $0x338
4104d2:	eb 81                	jmp    0x410455
4104d4:	8b 8d 7c ff ff ff    	mov    -0x84(%ebp),%ecx
4104da:	33 ff                	xor    %edi,%edi
4104dc:	8d 51 02             	lea    0x2(%ecx),%edx
4104df:	66 8b 01             	mov    (%ecx),%ax
4104e2:	83 c1 02             	add    $0x2,%ecx
4104e5:	66 3b c7             	cmp    %di,%ax
4104e8:	75 f5                	jne    0x4104df
4104ea:	2b ca                	sub    %edx,%ecx
4104ec:	d1 f9                	sar    $1,%ecx
4104ee:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
4104f1:	50                   	push   %eax
4104f2:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
4104f8:	89 45 90             	mov    %eax,-0x70(%ebp)
4104fb:	8d 45 90             	lea    -0x70(%ebp),%eax
4104fe:	50                   	push   %eax
4104ff:	57                   	push   %edi
410500:	57                   	push   %edi
410501:	6a 01                	push   $0x1
410503:	57                   	push   %edi
410504:	8b 7d 94             	mov    -0x6c(%ebp),%edi
410507:	ff 37                	push   (%edi)
410509:	ff 15 94 60 41 00    	call   *0x416094
41050f:	85 c0                	test   %eax,%eax
410511:	75 25                	jne    0x410538
410513:	ff 15 68 61 41 00    	call   *0x416168
410519:	8b f8                	mov    %eax,%edi
41051b:	85 ff                	test   %edi,%edi
41051d:	7e 09                	jle    0x410528
41051f:	0f b7 ff             	movzwl %di,%edi
410522:	81 cf 00 00 07 80    	or     $0x80070000,%edi
410528:	57                   	push   %edi
410529:	68 98 43 40 00       	push   $0x404398
41052e:	68 50 03 00 00       	push   $0x350
410533:	e9 1d ff ff ff       	jmp    0x410455
410538:	85 db                	test   %ebx,%ebx
41053a:	74 08                	je     0x410544
41053c:	53                   	push   %ebx
41053d:	ff 15 bc 62 41 00    	call   *0x4162bc
410543:	59                   	pop    %ecx
410544:	ff 75 90             	push   -0x70(%ebp)
410547:	ff 15 b8 62 41 00    	call   *0x4162b8
41054d:	8b d8                	mov    %eax,%ebx
41054f:	59                   	pop    %ecx
410550:	85 db                	test   %ebx,%ebx
410552:	75 15                	jne    0x410569
410554:	bf 0e 00 07 80       	mov    $0x8007000e,%edi
410559:	57                   	push   %edi
41055a:	68 98 43 40 00       	push   $0x404398
41055f:	68 59 03 00 00       	push   $0x359
410564:	e9 ec fe ff ff       	jmp    0x410455