4100e3:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4100e6:	e8 6f 33 ff ff       	call   0x40345a
4100eb:	8b 45 e8             	mov    -0x18(%ebp),%eax
4100ee:	8b 4d 08             	mov    0x8(%ebp),%ecx
4100f1:	89 46 04             	mov    %eax,0x4(%esi)
4100f4:	89 5e 08             	mov    %ebx,0x8(%esi)
4100f7:	89 7e 0c             	mov    %edi,0xc(%esi)
4100fa:	e8 d4 12 ff ff       	call   0x4013d3
4100ff:	8b 4d d8             	mov    -0x28(%ebp),%ecx
410102:	e8 26 59 ff ff       	call   0x405a2d
410107:	8b 75 f0             	mov    -0x10(%ebp),%esi
41010a:	83 65 d8 00          	andl   $0x0,-0x28(%ebp)
41010e:	46                   	inc    %esi
41010f:	89 75 f0             	mov    %esi,-0x10(%ebp)
410112:	3b 75 d0             	cmp    -0x30(%ebp),%esi
410115:	0f 82 40 ff ff ff    	jb     0x41005b
41011b:	8b 45 08             	mov    0x8(%ebp),%eax
41011e:	5f                   	pop    %edi
41011f:	5e                   	pop    %esi
410120:	5b                   	pop    %ebx
410121:	c9                   	leave
410122:	c2 04 00             	ret    $0x4
410125:	b9 74 6d 41 00       	mov    $0x416d74,%ecx
41012a:	e8 de e0 ff ff       	call   0x40e20d
41012f:	83 3d 70 6d 41 00 00 	cmpl   $0x0,0x416d70
410136:	74 17                	je     0x41014f
410138:	8b 0d 6c 6d 41 00    	mov    0x416d6c,%ecx
41013e:	85 c9                	test   %ecx,%ecx
410140:	74 0d                	je     0x41014f
410142:	51                   	push   %ecx
410143:	e8 07 09 00 00       	call   0x410a4f
410148:	83 25 70 6d 41 00 00 	andl   $0x0,0x416d70
41014f:	ff 35 74 6d 41 00    	push   0x416d74
410155:	ff 15 50 21 41 00    	call   *0x412150
41015b:	c3                   	ret
41015c:	55                   	push   %ebp
41015d:	8b ec                	mov    %esp,%ebp
41015f:	b9 74 6d 41 00       	mov    $0x416d74,%ecx
410164:	e8 a4 e0 ff ff       	call   0x40e20d
410169:	83 3d 70 6d 41 00 00 	cmpl   $0x0,0x416d70
410170:	75 44                	jne    0x4101b6
410172:	8b 0d 6c 6d 41 00    	mov    0x416d6c,%ecx
410178:	85 c9                	test   %ecx,%ecx
41017a:	75 20                	jne    0x41019c
41017c:	6a 38                	push   $0x38
41017e:	59                   	pop    %ecx
41017f:	e8 57 59 ff ff       	call   0x405adb
410184:	85 c0                	test   %eax,%eax
410186:	74 0c                	je     0x410194
410188:	51                   	push   %ecx
410189:	8b c8                	mov    %eax,%ecx
41018b:	e8 02 0b 00 00       	call   0x410c92
410190:	8b c8                	mov    %eax,%ecx
410192:	eb 02                	jmp    0x410196
410194:	33 c9                	xor    %ecx,%ecx
410196:	89 0d 6c 6d 41 00    	mov    %ecx,0x416d6c
41019c:	8b 45 08             	mov    0x8(%ebp),%eax
41019f:	ff 75 0c             	push   0xc(%ebp)
4101a2:	a3 68 6d 41 00       	mov    %eax,0x416d68
4101a7:	c7 05 70 6d 41 00 01 	movl   $0x1,0x416d70
4101ae:	00 00 00
4101b1:	e8 12 09 00 00       	call   0x410ac8
4101b6:	ff 35 74 6d 41 00    	push   0x416d74
4101bc:	ff 15 50 21 41 00    	call   *0x412150
4101c2:	5d                   	pop    %ebp
4101c3:	c2 08 00             	ret    $0x8
4101c6:	51                   	push   %ecx
4101c7:	b9 74 6d 41 00       	mov    $0x416d74,%ecx
4101cc:	c7 05 64 6d 41 00 c4 	movl   $0x4147c4,0x416d64
4101d3:	47 41 00
4101d6:	e8 5b e0 ff ff       	call   0x40e236
4101db:	6a 38                	push   $0x38
4101dd:	59                   	pop    %ecx
4101de:	e8 f8 58 ff ff       	call   0x405adb
4101e3:	85 c0                	test   %eax,%eax
4101e5:	74 0a                	je     0x4101f1
4101e7:	51                   	push   %ecx
4101e8:	8b c8                	mov    %eax,%ecx
4101ea:	e8 a3 0a 00 00       	call   0x410c92
4101ef:	eb 02                	jmp    0x4101f3
4101f1:	33 c0                	xor    %eax,%eax
4101f3:	83 25 70 6d 41 00 00 	andl   $0x0,0x416d70
4101fa:	a3 6c 6d 41 00       	mov    %eax,0x416d6c
4101ff:	b8 64 6d 41 00       	mov    $0x416d64,%eax
410204:	c3                   	ret
410205:	55                   	push   %ebp
410206:	8b ec                	mov    %esp,%ebp
410208:	83 ec 0c             	sub    $0xc,%esp
41020b:	56                   	push   %esi
41020c:	57                   	push   %edi
41020d:	33 ff                	xor    %edi,%edi
41020f:	57                   	push   %edi
410210:	8b f7                	mov    %edi,%esi
410212:	ff 15 30 23 41 00    	call   *0x412330
410218:	8d 45 f8             	lea    -0x8(%ebp),%eax
41021b:	89 7d f8             	mov    %edi,-0x8(%ebp)
41021e:	50                   	push   %eax
41021f:	68 50 25 41 00       	push   $0x412550
410224:	6a 01                	push   $0x1
410226:	57                   	push   %edi
410227:	68 a0 25 41 00       	push   $0x4125a0
41022c:	ff 15 28 23 41 00    	call   *0x412328
410232:	8b 4d f8             	mov    -0x8(%ebp),%ecx
410235:	85 c9                	test   %ecx,%ecx
410237:	74 64                	je     0x41029d
410239:	8b 01                	mov    (%ecx),%eax
41023b:	8d 55 fc             	lea    -0x4(%ebp),%edx
41023e:	57                   	push   %edi
41023f:	52                   	push   %edx
410240:	68 90 25 41 00       	push   $0x412590
410245:	51                   	push   %ecx
410246:	ff 50 0c             	call   *0xc(%eax)
410249:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41024c:	85 c9                	test   %ecx,%ecx
41024e:	74 3d                	je     0x41028d
410250:	8b 01                	mov    (%ecx),%eax
410252:	51                   	push   %ecx
410253:	ff 50 14             	call   *0x14(%eax)
410256:	eb 11                	jmp    0x410269
410258:	8b 4d f4             	mov    -0xc(%ebp),%ecx
41025b:	46                   	inc    %esi
41025c:	85 c9                	test   %ecx,%ecx
41025e:	74 09                	je     0x410269
410260:	8b 01                	mov    (%ecx),%eax
410262:	51                   	push   %ecx
410263:	ff 50 08             	call   *0x8(%eax)
410266:	89 7d f4             	mov    %edi,-0xc(%ebp)
410269:	8b 45 fc             	mov    -0x4(%ebp),%eax
41026c:	8d 55 f4             	lea    -0xc(%ebp),%edx
41026f:	57                   	push   %edi
410270:	52                   	push   %edx
410271:	6a 01                	push   $0x1
410273:	8b 08                	mov    (%eax),%ecx
410275:	50                   	push   %eax
410276:	ff 51 0c             	call   *0xc(%ecx)
410279:	85 c0                	test   %eax,%eax
41027b:	74 db                	je     0x410258
41027d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
410280:	85 c9                	test   %ecx,%ecx
410282:	74 09                	je     0x41028d
410284:	8b 01                	mov    (%ecx),%eax
410286:	51                   	push   %ecx
410287:	ff 50 08             	call   *0x8(%eax)
41028a:	89 7d fc             	mov    %edi,-0x4(%ebp)
41028d:	8b 55 f8             	mov    -0x8(%ebp),%edx
410290:	85 d2                	test   %edx,%edx
410292:	74 09                	je     0x41029d
410294:	8b 0a                	mov    (%edx),%ecx
410296:	52                   	push   %edx
410297:	ff 51 08             	call   *0x8(%ecx)
41029a:	89 7d f8             	mov    %edi,-0x8(%ebp)
41029d:	ff 15 24 23 41 00    	call   *0x412324
4102a3:	5f                   	pop    %edi
4102a4:	8b c6                	mov    %esi,%eax
4102a6:	5e                   	pop    %esi
4102a7:	c9                   	leave
4102a8:	c3                   	ret
4102a9:	56                   	push   %esi
4102aa:	8b f1                	mov    %ecx,%esi
4102ac:	57                   	push   %edi
4102ad:	33 ff                	xor    %edi,%edi
4102af:	39 7e 40             	cmp    %edi,0x40(%esi)
4102b2:	74 0f                	je     0x4102c3
4102b4:	ff 76 44             	push   0x44(%esi)
4102b7:	ff 15 2c 23 41 00    	call   *0x41232c
4102bd:	89 7e 40             	mov    %edi,0x40(%esi)
4102c0:	89 7e 44             	mov    %edi,0x44(%esi)
4102c3:	8b 4e 3c             	mov    0x3c(%esi),%ecx
4102c6:	85 c9                	test   %ecx,%ecx
4102c8:	74 09                	je     0x4102d3
4102ca:	8b 01                	mov    (%ecx),%eax
4102cc:	51                   	push   %ecx
4102cd:	ff 50 08             	call   *0x8(%eax)
4102d0:	89 7e 3c             	mov    %edi,0x3c(%esi)
4102d3:	5f                   	pop    %edi
4102d4:	5e                   	pop    %esi
4102d5:	c3                   	ret
4102d6:	6a 02                	push   $0x2
4102d8:	58                   	pop    %eax
4102d9:	c2 04 00             	ret    $0x4
4102dc:	33 c0                	xor    %eax,%eax
4102de:	40                   	inc    %eax
4102df:	c2 04 00             	ret    $0x4
4102e2:	55                   	push   %ebp
4102e3:	8b ec                	mov    %esp,%ebp
4102e5:	6a 10                	push   $0x10
4102e7:	68 70 25 41 00       	push   $0x412570
4102ec:	ff 75 0c             	push   0xc(%ebp)
4102ef:	e8 0c 0d ff ff       	call   0x401000
4102f4:	83 c4 0c             	add    $0xc,%esp
4102f7:	85 c0                	test   %eax,%eax
4102f9:	74 1d                	je     0x410318
4102fb:	6a 10                	push   $0x10
4102fd:	68 30 25 41 00       	push   $0x412530
410302:	ff 75 0c             	push   0xc(%ebp)
410305:	e8 f6 0c ff ff       	call   0x401000
41030a:	83 c4 0c             	add    $0xc,%esp
41030d:	85 c0                	test   %eax,%eax
41030f:	74 07                	je     0x410318
410311:	b8 02 40 00 80       	mov    $0x80004002,%eax
410316:	eb 0a                	jmp    0x410322
410318:	8b 45 10             	mov    0x10(%ebp),%eax
41031b:	8b 4d 08             	mov    0x8(%ebp),%ecx
41031e:	89 08                	mov    %ecx,(%eax)
410320:	33 c0                	xor    %eax,%eax
410322:	5d                   	pop    %ebp
410323:	c2 0c 00             	ret    $0xc
410326:	33 c0                	xor    %eax,%eax
410328:	c2 14 00             	ret    $0x14
41032b:	55                   	push   %ebp
41032c:	8b ec                	mov    %esp,%ebp
41032e:	51                   	push   %ecx
41032f:	51                   	push   %ecx
410330:	53                   	push   %ebx
410331:	8b 5d 14             	mov    0x14(%ebp),%ebx
410334:	8d 4d f8             	lea    -0x8(%ebp),%ecx
410337:	56                   	push   %esi
410338:	57                   	push   %edi
410339:	51                   	push   %ecx
41033a:	8b 03                	mov    (%ebx),%eax
41033c:	53                   	push   %ebx
41033d:	ff 50 0c             	call   *0xc(%eax)
410340:	85 c0                	test   %eax,%eax
410342:	75 49                	jne    0x41038d
410344:	8b 03                	mov    (%ebx),%eax
410346:	8d 4d fc             	lea    -0x4(%ebp),%ecx
410349:	51                   	push   %ecx
41034a:	53                   	push   %ebx
41034b:	ff 50 34             	call   *0x34(%eax)
41034e:	85 c0                	test   %eax,%eax
410350:	78 3b                	js     0x41038d
410352:	75 0b                	jne    0x41035f
410354:	ff 75 fc             	push   -0x4(%ebp)
410357:	8b 4d 08             	mov    0x8(%ebp),%ecx
41035a:	e8 55 00 00 00       	call   0x4103b4
41035f:	8b 55 08             	mov    0x8(%ebp),%edx
410362:	83 ec 1c             	sub    $0x1c,%esp
410365:	8b 42 24             	mov    0x24(%edx),%eax
410368:	8d 72 08             	lea    0x8(%edx),%esi
41036b:	6a 07                	push   $0x7
41036d:	59                   	pop    %ecx
41036e:	8b fc                	mov    %esp,%edi
410370:	8b 18                	mov    (%eax),%ebx
410372:	ff 72 04             	push   0x4(%edx)
410375:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
410377:	8b 4d 14             	mov    0x14(%ebp),%ecx
41037a:	51                   	push   %ecx
41037b:	8b 01                	mov    (%ecx),%eax
41037d:	ff 50 2c             	call   *0x2c(%eax)
410380:	8b 4d 08             	mov    0x8(%ebp),%ecx
410383:	50                   	push   %eax
410384:	ff 75 f8             	push   -0x8(%ebp)
410387:	8b 49 24             	mov    0x24(%ecx),%ecx
41038a:	ff 53 04             	call   *0x4(%ebx)
41038d:	5f                   	pop    %edi
41038e:	5e                   	pop    %esi
41038f:	33 c0                	xor    %eax,%eax
410391:	5b                   	pop    %ebx
410392:	c9                   	leave
410393:	c2 10 00             	ret    $0x10
410396:	55                   	push   %ebp
410397:	8b ec                	mov    %esp,%ebp
410399:	56                   	push   %esi
41039a:	57                   	push   %edi
41039b:	8d 79 08             	lea    0x8(%ecx),%edi
41039e:	6a 07                	push   $0x7
4103a0:	59                   	pop    %ecx
4103a1:	8d 75 08             	lea    0x8(%ebp),%esi
4103a4:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4103a6:	8d 4d 08             	lea    0x8(%ebp),%ecx
4103a9:	e8 73 09 00 00       	call   0x410d21
4103ae:	5f                   	pop    %edi
4103af:	5e                   	pop    %esi
4103b0:	5d                   	pop    %ebp
4103b1:	c2 1c 00             	ret    $0x1c
4103b4:	55                   	push   %ebp
4103b5:	8b ec                	mov    %esp,%ebp
4103b7:	53                   	push   %ebx
4103b8:	56                   	push   %esi
4103b9:	57                   	push   %edi
4103ba:	8b 7d 08             	mov    0x8(%ebp),%edi
4103bd:	8b f1                	mov    %ecx,%esi
4103bf:	6a 10                	push   $0x10
4103c1:	5b                   	pop    %ebx
4103c2:	53                   	push   %ebx
4103c3:	83 c7 10             	add    $0x10,%edi
4103c6:	68 e0 25 41 00       	push   $0x4125e0
4103cb:	57                   	push   %edi
4103cc:	e8 2f 0c ff ff       	call   0x401000
4103d1:	83 c4 0c             	add    $0xc,%esp
4103d4:	85 c0                	test   %eax,%eax
4103d6:	75 05                	jne    0x4103dd
4103d8:	89 5e 04             	mov    %ebx,0x4(%esi)
4103db:	eb 36                	jmp    0x410413
4103dd:	53                   	push   %ebx
4103de:	68 d0 25 41 00       	push   $0x4125d0
4103e3:	57                   	push   %edi
4103e4:	e8 17 0c ff ff       	call   0x401000
4103e9:	83 c4 0c             	add    $0xc,%esp
4103ec:	85 c0                	test   %eax,%eax
4103ee:	75 09                	jne    0x4103f9
4103f0:	c7 46 04 18 00 00 00 	movl   $0x18,0x4(%esi)
4103f7:	eb 1a                	jmp    0x410413
4103f9:	53                   	push   %ebx
4103fa:	68 c0 25 41 00       	push   $0x4125c0
4103ff:	57                   	push   %edi
410400:	e8 fb 0b ff ff       	call   0x401000
410405:	83 c4 0c             	add    $0xc,%esp
410408:	85 c0                	test   %eax,%eax
41040a:	75 07                	jne    0x410413
41040c:	c7 46 04 20 00 00 00 	movl   $0x20,0x4(%esi)
410413:	5f                   	pop    %edi
410414:	5e                   	pop    %esi
410415:	5b                   	pop    %ebx
410416:	5d                   	pop    %ebp
410417:	c2 04 00             	ret    $0x4
41041a:	c7 01 20 48 41 00    	movl   $0x414820,(%ecx)
410420:	83 c1 08             	add    $0x8,%ecx
410423:	e9 f9 08 00 00       	jmp    0x410d21
410428:	56                   	push   %esi
410429:	8b f1                	mov    %ecx,%esi
41042b:	8d 4e 08             	lea    0x8(%esi),%ecx
41042e:	c7 06 20 48 41 00    	movl   $0x414820,(%esi)
410434:	e8 4c 05 00 00       	call   0x410985
410439:	c7 46 24 64 6d 41 00 	movl   $0x416d64,0x24(%esi)
410440:	8b c6                	mov    %esi,%eax
410442:	5e                   	pop    %esi
410443:	c2 04 00             	ret    $0x4
410446:	55                   	push   %ebp
410447:	8b ec                	mov    %esp,%ebp
410449:	51                   	push   %ecx
41044a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41044e:	8d 45 fc             	lea    -0x4(%ebp),%eax
410451:	50                   	push   %eax
410452:	33 d2                	xor    %edx,%edx
410454:	51                   	push   %ecx
410455:	42                   	inc    %edx
410456:	e8 22 00 00 00       	call   0x41047d
41045b:	8b 45 fc             	mov    -0x4(%ebp),%eax
41045e:	59                   	pop    %ecx
41045f:	59                   	pop    %ecx
410460:	c9                   	leave
410461:	c3                   	ret
410462:	55                   	push   %ebp
410463:	8b ec                	mov    %esp,%ebp
410465:	51                   	push   %ecx
410466:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41046a:	8d 45 fc             	lea    -0x4(%ebp),%eax
41046d:	50                   	push   %eax
41046e:	51                   	push   %ecx