420075:	8b 45 18             	mov    0x18(%ebp),%eax
420078:	89 45 e0             	mov    %eax,-0x20(%ebp)
42007b:	8b 45 1c             	mov    0x1c(%ebp),%eax
42007e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
420081:	8b 45 20             	mov    0x20(%ebp),%eax
420084:	89 45 e8             	mov    %eax,-0x18(%ebp)
420087:	8b 45 24             	mov    0x24(%ebp),%eax
42008a:	89 45 ec             	mov    %eax,-0x14(%ebp)
42008d:	8b 45 28             	mov    0x28(%ebp),%eax
420090:	89 45 f0             	mov    %eax,-0x10(%ebp)
420093:	8b 45 2c             	mov    0x2c(%ebp),%eax
420096:	89 45 f4             	mov    %eax,-0xc(%ebp)
420099:	53                   	push   %ebx
42009a:	8b d9                	mov    %ecx,%ebx
42009c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
42009f:	56                   	push   %esi
4200a0:	57                   	push   %edi
4200a1:	85 d2                	test   %edx,%edx
4200a3:	0f 84 06 01 00 00    	je     0x4201af
4200a9:	8b ca                	mov    %edx,%ecx
4200ab:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
4200b2:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
4200b9:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
4200c0:	8d 71 02             	lea    0x2(%ecx),%esi
4200c3:	66 8b 01             	mov    (%ecx),%ax
4200c6:	83 c1 02             	add    $0x2,%ecx
4200c9:	66 85 c0             	test   %ax,%ax
4200cc:	75 f5                	jne    0x4200c3
4200ce:	2b ce                	sub    %esi,%ecx
4200d0:	d1 f9                	sar    $1,%ecx
4200d2:	51                   	push   %ecx
4200d3:	52                   	push   %edx
4200d4:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4200d7:	e8 84 1f fe ff       	call   0x402060
4200dc:	8d 45 c0             	lea    -0x40(%ebp),%eax
4200df:	8b cb                	mov    %ebx,%ecx
4200e1:	50                   	push   %eax
4200e2:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4200e5:	50                   	push   %eax
4200e6:	e8 05 3a fe ff       	call   0x403af0
4200eb:	8b 5d bc             	mov    -0x44(%ebp),%ebx
4200ee:	8b 7d d4             	mov    -0x2c(%ebp),%edi
4200f1:	8b 75 c0             	mov    -0x40(%ebp),%esi
4200f4:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4200f7:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
4200fb:	75 28                	jne    0x420125
4200fd:	83 7b 24 08          	cmpl   $0x8,0x24(%ebx)
420101:	8d 53 10             	lea    0x10(%ebx),%edx
420104:	72 03                	jb     0x420109
420106:	8b 53 10             	mov    0x10(%ebx),%edx
420109:	ff 73 20             	push   0x20(%ebx)
42010c:	83 ff 08             	cmp    $0x8,%edi
42010f:	8d 4d c0             	lea    -0x40(%ebp),%ecx
420112:	52                   	push   %edx
420113:	8b 55 d0             	mov    -0x30(%ebp),%edx
420116:	0f 43 ce             	cmovae %esi,%ecx
420119:	e8 02 3b fe ff       	call   0x403c20
42011e:	83 c4 08             	add    $0x8,%esp
420121:	85 c0                	test   %eax,%eax
420123:	79 08                	jns    0x42012d
420125:	8b 5d fc             	mov    -0x4(%ebp),%ebx
420128:	8b 1b                	mov    (%ebx),%ebx
42012a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
42012d:	83 ff 08             	cmp    $0x8,%edi
420130:	72 2b                	jb     0x42015d
420132:	8d 0c 7d 02 00 00 00 	lea    0x2(,%edi,2),%ecx
420139:	8b c6                	mov    %esi,%eax
42013b:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
420141:	72 10                	jb     0x420153
420143:	8b 70 fc             	mov    -0x4(%eax),%esi
420146:	83 c1 23             	add    $0x23,%ecx
420149:	2b c6                	sub    %esi,%eax
42014b:	83 c0 fc             	add    $0xfffffffc,%eax
42014e:	83 f8 1f             	cmp    $0x1f,%eax
420151:	77 65                	ja     0x4201b8
420153:	51                   	push   %ecx
420154:	56                   	push   %esi
420155:	e8 ae 98 04 00       	call   0x469a08
42015a:	83 c4 08             	add    $0x8,%esp
42015d:	8b 45 fc             	mov    -0x4(%ebp),%eax
420160:	3b 18                	cmp    (%eax),%ebx
420162:	74 4b                	je     0x4201af
420164:	8b 73 28             	mov    0x28(%ebx),%esi
420167:	3b 73 2c             	cmp    0x2c(%ebx),%esi
42016a:	74 43                	je     0x4201af
42016c:	0f 1f 40 00          	nopl   0x0(%eax)
420170:	8b 1e                	mov    (%esi),%ebx
420172:	6a 01                	push   $0x1
420174:	6a 00                	push   $0x0
420176:	6a 00                	push   $0x0
420178:	ff 75 f4             	push   -0xc(%ebp)
42017b:	8b 3b                	mov    (%ebx),%edi
42017d:	ff 75 f0             	push   -0x10(%ebp)
420180:	ff 75 ec             	push   -0x14(%ebp)
420183:	8b 7f 14             	mov    0x14(%edi),%edi
420186:	8b cf                	mov    %edi,%ecx
420188:	ff 75 e8             	push   -0x18(%ebp)
42018b:	ff 75 e4             	push   -0x1c(%ebp)
42018e:	ff 75 e0             	push   -0x20(%ebp)
420191:	ff 75 dc             	push   -0x24(%ebp)
420194:	ff 75 d8             	push   -0x28(%ebp)
420197:	ff 75 0c             	push   0xc(%ebp)
42019a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
4201a0:	8b cb                	mov    %ebx,%ecx
4201a2:	ff d7                	call   *%edi
4201a4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4201a7:	83 c6 04             	add    $0x4,%esi
4201aa:	3b 70 2c             	cmp    0x2c(%eax),%esi
4201ad:	75 c1                	jne    0x420170
4201af:	5f                   	pop    %edi
4201b0:	5e                   	pop    %esi
4201b1:	5b                   	pop    %ebx
4201b2:	8b e5                	mov    %ebp,%esp
4201b4:	5d                   	pop    %ebp
4201b5:	c2 30 00             	ret    $0x30
4201b8:	e8 74 94 05 00       	call   0x479631
4201bd:	cc                   	int3
4201be:	cc                   	int3
4201bf:	cc                   	int3
4201c0:	55                   	push   %ebp
4201c1:	8b ec                	mov    %esp,%ebp
4201c3:	83 e4 f8             	and    $0xfffffff8,%esp
4201c6:	83 ec 4c             	sub    $0x4c,%esp
4201c9:	8b 45 10             	mov    0x10(%ebp),%eax
4201cc:	8b 55 08             	mov    0x8(%ebp),%edx
4201cf:	89 44 24 24          	mov    %eax,0x24(%esp)
4201d3:	8b 45 14             	mov    0x14(%ebp),%eax
4201d6:	89 44 24 20          	mov    %eax,0x20(%esp)
4201da:	8b 45 18             	mov    0x18(%ebp),%eax
4201dd:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4201e1:	8b 45 1c             	mov    0x1c(%ebp),%eax
4201e4:	89 44 24 18          	mov    %eax,0x18(%esp)
4201e8:	8b 45 20             	mov    0x20(%ebp),%eax
4201eb:	89 44 24 14          	mov    %eax,0x14(%esp)
4201ef:	8b 45 24             	mov    0x24(%ebp),%eax
4201f2:	89 44 24 10          	mov    %eax,0x10(%esp)
4201f6:	8b 45 28             	mov    0x28(%ebp),%eax
4201f9:	89 44 24 0c          	mov    %eax,0xc(%esp)
4201fd:	8b 45 2c             	mov    0x2c(%ebp),%eax
420200:	89 44 24 08          	mov    %eax,0x8(%esp)
420204:	53                   	push   %ebx
420205:	8b d9                	mov    %ecx,%ebx
420207:	89 5c 24 04          	mov    %ebx,0x4(%esp)
42020b:	56                   	push   %esi
42020c:	57                   	push   %edi
42020d:	85 d2                	test   %edx,%edx
42020f:	0f 84 1a 01 00 00    	je     0x42032f
420215:	8b ca                	mov    %edx,%ecx
420217:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%esp)
42021e:	00
42021f:	c7 44 24 44 00 00 00 	movl   $0x0,0x44(%esp)
420226:	00
420227:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
42022e:	00
42022f:	8d 71 02             	lea    0x2(%ecx),%esi
420232:	66 8b 01             	mov    (%ecx),%ax
420235:	83 c1 02             	add    $0x2,%ecx
420238:	66 85 c0             	test   %ax,%ax
42023b:	75 f5                	jne    0x420232
42023d:	2b ce                	sub    %esi,%ecx
42023f:	d1 f9                	sar    $1,%ecx
420241:	51                   	push   %ecx
420242:	52                   	push   %edx
420243:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
420247:	e8 14 1e fe ff       	call   0x402060
42024c:	8d 44 24 34          	lea    0x34(%esp),%eax
420250:	8b cb                	mov    %ebx,%ecx
420252:	50                   	push   %eax
420253:	8d 44 24 50          	lea    0x50(%esp),%eax
420257:	50                   	push   %eax
420258:	e8 93 38 fe ff       	call   0x403af0
42025d:	8b 5c 24 54          	mov    0x54(%esp),%ebx
420261:	8b 7c 24 48          	mov    0x48(%esp),%edi
420265:	8b 74 24 34          	mov    0x34(%esp),%esi
420269:	89 5c 24 10          	mov    %ebx,0x10(%esp)
42026d:	80 7b 0d 00          	cmpb   $0x0,0xd(%ebx)
420271:	75 2a                	jne    0x42029d
420273:	83 7b 24 08          	cmpl   $0x8,0x24(%ebx)
420277:	8d 53 10             	lea    0x10(%ebx),%edx
42027a:	72 03                	jb     0x42027f
42027c:	8b 53 10             	mov    0x10(%ebx),%edx
42027f:	ff 73 20             	push   0x20(%ebx)
420282:	83 ff 08             	cmp    $0x8,%edi
420285:	8d 4c 24 38          	lea    0x38(%esp),%ecx
420289:	52                   	push   %edx
42028a:	8b 54 24 4c          	mov    0x4c(%esp),%edx
42028e:	0f 43 ce             	cmovae %esi,%ecx
420291:	e8 8a 39 fe ff       	call   0x403c20
420296:	83 c4 08             	add    $0x8,%esp
420299:	85 c0                	test   %eax,%eax
42029b:	79 0a                	jns    0x4202a7
42029d:	8b 5c 24 0c          	mov    0xc(%esp),%ebx
4202a1:	8b 1b                	mov    (%ebx),%ebx
4202a3:	89 5c 24 10          	mov    %ebx,0x10(%esp)
4202a7:	83 ff 08             	cmp    $0x8,%edi
4202aa:	72 2b                	jb     0x4202d7
4202ac:	8d 0c 7d 02 00 00 00 	lea    0x2(,%edi,2),%ecx
4202b3:	8b c6                	mov    %esi,%eax
4202b5:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4202bb:	72 10                	jb     0x4202cd
4202bd:	8b 70 fc             	mov    -0x4(%eax),%esi
4202c0:	83 c1 23             	add    $0x23,%ecx
4202c3:	2b c6                	sub    %esi,%eax
4202c5:	83 c0 fc             	add    $0xfffffffc,%eax
4202c8:	83 f8 1f             	cmp    $0x1f,%eax
4202cb:	77 6b                	ja     0x420338
4202cd:	51                   	push   %ecx
4202ce:	56                   	push   %esi
4202cf:	e8 34 97 04 00       	call   0x469a08
4202d4:	83 c4 08             	add    $0x8,%esp
4202d7:	8b 44 24 0c          	mov    0xc(%esp),%eax
4202db:	3b 18                	cmp    (%eax),%ebx
4202dd:	74 50                	je     0x42032f
4202df:	8b 73 28             	mov    0x28(%ebx),%esi
4202e2:	3b 73 2c             	cmp    0x2c(%ebx),%esi
4202e5:	74 48                	je     0x42032f
4202e7:	8b 1e                	mov    (%esi),%ebx
4202e9:	6a 01                	push   $0x1
4202eb:	6a 00                	push   $0x0
4202ed:	6a 00                	push   $0x0
4202ef:	ff 74 24 20          	push   0x20(%esp)
4202f3:	8b 3b                	mov    (%ebx),%edi
4202f5:	ff 74 24 28          	push   0x28(%esp)
4202f9:	ff 74 24 30          	push   0x30(%esp)
4202fd:	8b 7f 10             	mov    0x10(%edi),%edi
420300:	8b cf                	mov    %edi,%ecx
420302:	ff 74 24 38          	push   0x38(%esp)
420306:	ff 74 24 40          	push   0x40(%esp)
42030a:	ff 74 24 48          	push   0x48(%esp)
42030e:	ff 74 24 50          	push   0x50(%esp)
420312:	ff 74 24 58          	push   0x58(%esp)
420316:	ff 75 0c             	push   0xc(%ebp)
420319:	ff 15 d4 e2 49 00    	call   *0x49e2d4
42031f:	8b cb                	mov    %ebx,%ecx
420321:	ff d7                	call   *%edi
420323:	8b 44 24 10          	mov    0x10(%esp),%eax
420327:	83 c6 04             	add    $0x4,%esi
42032a:	3b 70 2c             	cmp    0x2c(%eax),%esi
42032d:	75 b8                	jne    0x4202e7
42032f:	5f                   	pop    %edi
420330:	5e                   	pop    %esi
420331:	5b                   	pop    %ebx
420332:	8b e5                	mov    %ebp,%esp
420334:	5d                   	pop    %ebp
420335:	c2 30 00             	ret    $0x30
420338:	e8 f4 92 05 00       	call   0x479631
42033d:	cc                   	int3
42033e:	cc                   	int3
42033f:	cc                   	int3
420340:	55                   	push   %ebp
420341:	8b ec                	mov    %esp,%ebp
420343:	6a ff                	push   $0xffffffff
420345:	68 85 93 49 00       	push   $0x499385
42034a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
420350:	50                   	push   %eax
420351:	83 ec 1c             	sub    $0x1c,%esp
420354:	53                   	push   %ebx
420355:	56                   	push   %esi
420356:	57                   	push   %edi
420357:	a1 14 40 4c 00       	mov    0x4c4014,%eax
42035c:	33 c5                	xor    %ebp,%eax
42035e:	50                   	push   %eax
42035f:	8d 45 f4             	lea    -0xc(%ebp),%eax
420362:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
420368:	8b f9                	mov    %ecx,%edi
42036a:	89 7d ec             	mov    %edi,-0x14(%ebp)
42036d:	8b 5d 08             	mov    0x8(%ebp),%ebx
420370:	8d 45 d8             	lea    -0x28(%ebp),%eax
420373:	53                   	push   %ebx
420374:	50                   	push   %eax
420375:	89 5d f0             	mov    %ebx,-0x10(%ebp)
420378:	e8 73 37 fe ff       	call   0x403af0
42037d:	8b 75 e0             	mov    -0x20(%ebp),%esi
420380:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
420384:	75 2c                	jne    0x4203b2
420386:	83 7e 24 08          	cmpl   $0x8,0x24(%esi)
42038a:	8d 56 10             	lea    0x10(%esi),%edx
42038d:	72 03                	jb     0x420392
42038f:	8b 56 10             	mov    0x10(%esi),%edx
420392:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
420396:	8b cb                	mov    %ebx,%ecx
420398:	72 02                	jb     0x42039c
42039a:	8b 0b                	mov    (%ebx),%ecx
42039c:	ff 76 20             	push   0x20(%esi)
42039f:	52                   	push   %edx
4203a0:	8b 53 10             	mov    0x10(%ebx),%edx
4203a3:	e8 78 38 fe ff       	call   0x403c20
4203a8:	c1 e8 1f             	shr    $0x1f,%eax
4203ab:	83 c4 08             	add    $0x8,%esp
4203ae:	84 c0                	test   %al,%al
4203b0:	74 71                	je     0x420423
4203b2:	81 7f 04 c4 4e ec 04 	cmpl   $0x4ec4ec4,0x4(%edi)
4203b9:	74 7f                	je     0x42043a
4203bb:	8b 1f                	mov    (%edi),%ebx
4203bd:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4203c0:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4203c7:	6a 34                	push   $0x34
4203c9:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
4203d0:	e8 03 96 04 00       	call   0x4699d8
4203d5:	8b f8                	mov    %eax,%edi
4203d7:	83 c4 04             	add    $0x4,%esp
4203da:	89 7d e8             	mov    %edi,-0x18(%ebp)
4203dd:	ff 75 f0             	push   -0x10(%ebp)
4203e0:	8d 4f 10             	lea    0x10(%edi),%ecx
4203e3:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4203ea:	e8 81 31 fe ff       	call   0x403570
4203ef:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4203f2:	57                   	push   %edi
4203f3:	ff 75 dc             	push   -0x24(%ebp)
4203f6:	c7 47 28 00 00 00 00 	movl   $0x0,0x28(%edi)
4203fd:	ff 75 d8             	push   -0x28(%ebp)
420400:	c7 47 2c 00 00 00 00 	movl   $0x0,0x2c(%edi)
420407:	c7 47 30 00 00 00 00 	movl   $0x0,0x30(%edi)
42040e:	89 1f                	mov    %ebx,(%edi)
420410:	89 5f 04             	mov    %ebx,0x4(%edi)
420413:	89 5f 08             	mov    %ebx,0x8(%edi)
420416:	66 c7 47 0c 00 00    	movw   $0x0,0xc(%edi)
42041c:	e8 bf 34 fe ff       	call   0x4038e0
420421:	8b f0                	mov    %eax,%esi
420423:	8d 46 28             	lea    0x28(%esi),%eax
420426:	8b 4d f4             	mov    -0xc(%ebp),%ecx
420429:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
420430:	59                   	pop    %ecx
420431:	5f                   	pop    %edi
420432:	5e                   	pop    %esi
420433:	5b                   	pop    %ebx
420434:	8b e5                	mov    %ebp,%esp
420436:	5d                   	pop    %ebp
420437:	c2 04 00             	ret    $0x4
42043a:	e8 81 32 fe ff       	call   0x4036c0
42043f:	cc                   	int3
420440:	53                   	push   %ebx
420441:	8b d9                	mov    %ecx,%ebx
420443:	56                   	push   %esi
420444:	8b 33                	mov    (%ebx),%esi
420446:	8b 76 04             	mov    0x4(%esi),%esi
420449:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
42044d:	75 2a                	jne    0x420479
42044f:	57                   	push   %edi
420450:	ff 76 08             	push   0x8(%esi)
420453:	8b cb                	mov    %ebx,%ecx
420455:	53                   	push   %ebx
420456:	e8 b5 02 00 00       	call   0x420710
42045b:	8b fe                	mov    %esi,%edi
42045d:	8b 36                	mov    (%esi),%esi
42045f:	8d 4f 10             	lea    0x10(%edi),%ecx
420462:	e8 f9 02 00 00       	call   0x420760
420467:	6a 34                	push   $0x34
420469:	57                   	push   %edi
42046a:	e8 99 95 04 00       	call   0x469a08