41403b:	74 d7                	je     0x414014
41403d:	c6 07 02             	movb   $0x2,(%edi)
414040:	eb 15                	jmp    0x414057
414042:	53                   	push   %ebx
414043:	53                   	push   %ebx
414044:	53                   	push   %ebx
414045:	ff 75 08             	push   0x8(%ebp)
414048:	e8 c4 a2 ff ff       	call   0x40e311
41404d:	23 c2                	and    %edx,%eax
41404f:	83 c4 10             	add    $0x10,%esp
414052:	83 f8 ff             	cmp    $0xffffffff,%eax
414055:	74 bd                	je     0x414014
414057:	85 f6                	test   %esi,%esi
414059:	0f 84 15 ff ff ff    	je     0x413f74
41405f:	0f be 07             	movsbl (%edi),%eax
414062:	8b f3                	mov    %ebx,%esi
414064:	89 5d fc             	mov    %ebx,-0x4(%ebp)
414067:	83 e8 01             	sub    $0x1,%eax
41406a:	74 11                	je     0x41407d
41406c:	83 e8 01             	sub    $0x1,%eax
41406f:	75 16                	jne    0x414087
414071:	6a 02                	push   $0x2
414073:	c7 45 fc ff fe 00 00 	movl   $0xfeff,-0x4(%ebp)
41407a:	5e                   	pop    %esi
41407b:	eb 12                	jmp    0x41408f
41407d:	6a 03                	push   $0x3
41407f:	c7 45 fc ef bb bf 00 	movl   $0xbfbbef,-0x4(%ebp)
414086:	5e                   	pop    %esi
414087:	85 f6                	test   %esi,%esi
414089:	0f 8e e5 fe ff ff    	jle    0x413f74
41408f:	8b c6                	mov    %esi,%eax
414091:	2b c3                	sub    %ebx,%eax
414093:	50                   	push   %eax
414094:	8d 45 fc             	lea    -0x4(%ebp),%eax
414097:	03 c3                	add    %ebx,%eax
414099:	50                   	push   %eax
41409a:	ff 75 08             	push   0x8(%ebp)
41409d:	e8 1a a8 ff ff       	call   0x40e8bc
4140a2:	83 c4 0c             	add    $0xc,%esp
4140a5:	83 f8 ff             	cmp    $0xffffffff,%eax
4140a8:	0f 84 66 ff ff ff    	je     0x414014
4140ae:	03 d8                	add    %eax,%ebx
4140b0:	3b f3                	cmp    %ebx,%esi
4140b2:	7f db                	jg     0x41408f
4140b4:	e9 bb fe ff ff       	jmp    0x413f74
4140b9:	53                   	push   %ebx
4140ba:	53                   	push   %ebx
4140bb:	53                   	push   %ebx
4140bc:	53                   	push   %ebx
4140bd:	53                   	push   %ebx
4140be:	e8 98 3b ff ff       	call   0x407c5b
4140c3:	cc                   	int3
4140c4:	8b ff                	mov    %edi,%edi
4140c6:	55                   	push   %ebp
4140c7:	8b ec                	mov    %esp,%ebp
4140c9:	8b 45 20             	mov    0x20(%ebp),%eax
4140cc:	0b 45 24             	or     0x24(%ebp),%eax
4140cf:	6a 00                	push   $0x0
4140d1:	50                   	push   %eax
4140d2:	ff 75 18             	push   0x18(%ebp)
4140d5:	ff 75 0c             	push   0xc(%ebp)
4140d8:	ff 75 1c             	push   0x1c(%ebp)
4140db:	ff 75 14             	push   0x14(%ebp)
4140de:	ff 75 08             	push   0x8(%ebp)
4140e1:	ff 15 0c b1 41 00    	call   *0x41b10c
4140e7:	5d                   	pop    %ebp
4140e8:	c3                   	ret
4140e9:	8b ff                	mov    %edi,%edi
4140eb:	55                   	push   %ebp
4140ec:	8b ec                	mov    %esp,%ebp
4140ee:	8b 45 08             	mov    0x8(%ebp),%eax
4140f1:	ba 00 07 00 00       	mov    $0x700,%edx
4140f6:	23 c2                	and    %edx,%eax
4140f8:	b9 00 04 00 00       	mov    $0x400,%ecx
4140fd:	3b c1                	cmp    %ecx,%eax
4140ff:	7f 28                	jg     0x414129
414101:	74 21                	je     0x414124
414103:	85 c0                	test   %eax,%eax
414105:	74 1d                	je     0x414124
414107:	3d 00 01 00 00       	cmp    $0x100,%eax
41410c:	74 12                	je     0x414120
41410e:	3d 00 02 00 00       	cmp    $0x200,%eax
414113:	74 3b                	je     0x414150
414115:	3d 00 03 00 00       	cmp    $0x300,%eax
41411a:	75 1f                	jne    0x41413b
41411c:	6a 02                	push   $0x2
41411e:	eb 06                	jmp    0x414126
414120:	6a 04                	push   $0x4
414122:	eb 02                	jmp    0x414126
414124:	6a 03                	push   $0x3
414126:	58                   	pop    %eax
414127:	5d                   	pop    %ebp
414128:	c3                   	ret
414129:	3d 00 05 00 00       	cmp    $0x500,%eax
41412e:	74 24                	je     0x414154
414130:	3d 00 06 00 00       	cmp    $0x600,%eax
414135:	74 19                	je     0x414150
414137:	3b c2                	cmp    %edx,%eax
414139:	74 19                	je     0x414154
41413b:	e8 c7 3b ff ff       	call   0x407d07
414140:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
414146:	e8 e3 3a ff ff       	call   0x407c2e
41414b:	83 c8 ff             	or     $0xffffffff,%eax
41414e:	5d                   	pop    %ebp
41414f:	c3                   	ret
414150:	6a 05                	push   $0x5
414152:	eb d2                	jmp    0x414126
414154:	33 c0                	xor    %eax,%eax
414156:	40                   	inc    %eax
414157:	5d                   	pop    %ebp
414158:	c3                   	ret
414159:	8b ff                	mov    %edi,%edi
41415b:	55                   	push   %ebp
41415c:	8b ec                	mov    %esp,%ebp
41415e:	51                   	push   %ecx
41415f:	53                   	push   %ebx
414160:	8b 5d 0c             	mov    0xc(%ebp),%ebx
414163:	8b c3                	mov    %ebx,%eax
414165:	56                   	push   %esi
414166:	8b 75 08             	mov    0x8(%ebp),%esi
414169:	83 e0 03             	and    $0x3,%eax
41416c:	57                   	push   %edi
41416d:	bf 00 00 00 80       	mov    $0x80000000,%edi
414172:	c6 06 00             	movb   $0x0,(%esi)
414175:	83 e8 00             	sub    $0x0,%eax
414178:	74 47                	je     0x4141c1
41417a:	83 e8 01             	sub    $0x1,%eax
41417d:	74 21                	je     0x4141a0
41417f:	83 e8 01             	sub    $0x1,%eax
414182:	74 15                	je     0x414199
414184:	e8 7e 3b ff ff       	call   0x407d07
414189:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41418f:	e8 9a 3a ff ff       	call   0x407c2e
414194:	83 c8 ff             	or     $0xffffffff,%eax
414197:	eb 2a                	jmp    0x4141c3
414199:	b8 00 00 00 c0       	mov    $0xc0000000,%eax
41419e:	eb 23                	jmp    0x4141c3
4141a0:	f7 c3 00 00 07 00    	test   $0x70000,%ebx
4141a6:	0f 95 c1             	setne  %cl
4141a9:	f6 c3 08             	test   $0x8,%bl
4141ac:	0f 95 c0             	setne  %al
4141af:	22 c8                	and    %al,%cl
4141b1:	0f b6 c1             	movzbl %cl,%eax
4141b4:	f7 d8                	neg    %eax
4141b6:	1b c0                	sbb    %eax,%eax
4141b8:	23 c7                	and    %edi,%eax
4141ba:	05 00 00 00 40       	add    $0x40000000,%eax
4141bf:	eb 02                	jmp    0x4141c3
4141c1:	8b c7                	mov    %edi,%eax
4141c3:	53                   	push   %ebx
4141c4:	89 46 04             	mov    %eax,0x4(%esi)
4141c7:	e8 1d ff ff ff       	call   0x4140e9
4141cc:	59                   	pop    %ecx
4141cd:	89 46 08             	mov    %eax,0x8(%esi)
4141d0:	8b 45 10             	mov    0x10(%ebp),%eax
4141d3:	6a 10                	push   $0x10
4141d5:	59                   	pop    %ecx
4141d6:	2b c1                	sub    %ecx,%eax
4141d8:	74 3e                	je     0x414218
4141da:	2b c1                	sub    %ecx,%eax
4141dc:	74 35                	je     0x414213
4141de:	2b c1                	sub    %ecx,%eax
4141e0:	74 2c                	je     0x41420e
4141e2:	2b c1                	sub    %ecx,%eax
4141e4:	74 24                	je     0x41420a
4141e6:	83 e8 40             	sub    $0x40,%eax
4141e9:	74 15                	je     0x414200
4141eb:	e8 17 3b ff ff       	call   0x407d07
4141f0:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4141f6:	e8 33 3a ff ff       	call   0x407c2e
4141fb:	83 c8 ff             	or     $0xffffffff,%eax
4141fe:	eb 1a                	jmp    0x41421a
414200:	33 c0                	xor    %eax,%eax
414202:	39 7e 04             	cmp    %edi,0x4(%esi)
414205:	0f 94 c0             	sete   %al
414208:	eb 10                	jmp    0x41421a
41420a:	6a 03                	push   $0x3
41420c:	eb 02                	jmp    0x414210
41420e:	6a 02                	push   $0x2
414210:	58                   	pop    %eax
414211:	eb 07                	jmp    0x41421a
414213:	33 c0                	xor    %eax,%eax
414215:	40                   	inc    %eax
414216:	eb 02                	jmp    0x41421a
414218:	33 c0                	xor    %eax,%eax
41421a:	83 66 14 00          	andl   $0x0,0x14(%esi)
41421e:	89 46 0c             	mov    %eax,0xc(%esi)
414221:	c7 46 10 80 00 00 00 	movl   $0x80,0x10(%esi)
414228:	84 db                	test   %bl,%bl
41422a:	79 03                	jns    0x41422f
41422c:	80 0e 10             	orb    $0x10,(%esi)
41422f:	bf 00 80 00 00       	mov    $0x8000,%edi
414234:	85 df                	test   %ebx,%edi
414236:	75 1e                	jne    0x414256
414238:	f7 c3 00 40 07 00    	test   $0x74000,%ebx
41423e:	75 13                	jne    0x414253
414240:	8d 45 fc             	lea    -0x4(%ebp),%eax
414243:	50                   	push   %eax
414244:	e8 d2 51 ff ff       	call   0x40941b
414249:	59                   	pop    %ecx
41424a:	85 c0                	test   %eax,%eax
41424c:	75 7a                	jne    0x4142c8
41424e:	39 7d fc             	cmp    %edi,-0x4(%ebp)
414251:	74 03                	je     0x414256
414253:	80 0e 80             	orb    $0x80,(%esi)
414256:	b9 00 01 00 00       	mov    $0x100,%ecx
41425b:	85 d9                	test   %ebx,%ecx
41425d:	74 15                	je     0x414274
41425f:	a1 e4 46 42 00       	mov    0x4246e4,%eax
414264:	f7 d0                	not    %eax
414266:	23 45 14             	and    0x14(%ebp),%eax
414269:	84 c0                	test   %al,%al
41426b:	78 07                	js     0x414274
41426d:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%esi)
414274:	f6 c3 40             	test   $0x40,%bl
414277:	74 12                	je     0x41428b
414279:	81 4e 14 00 00 00 04 	orl    $0x4000000,0x14(%esi)
414280:	81 4e 04 00 00 01 00 	orl    $0x10000,0x4(%esi)
414287:	83 4e 0c 04          	orl    $0x4,0xc(%esi)
41428b:	f7 c3 00 10 00 00    	test   $0x1000,%ebx
414291:	74 03                	je     0x414296
414293:	09 4e 10             	or     %ecx,0x10(%esi)
414296:	f7 c3 00 20 00 00    	test   $0x2000,%ebx
41429c:	74 07                	je     0x4142a5
41429e:	81 4e 14 00 00 00 02 	orl    $0x2000000,0x14(%esi)
4142a5:	f6 c3 20             	test   $0x20,%bl
4142a8:	74 09                	je     0x4142b3
4142aa:	81 4e 14 00 00 00 08 	orl    $0x8000000,0x14(%esi)
4142b1:	eb 0c                	jmp    0x4142bf
4142b3:	f6 c3 10             	test   $0x10,%bl
4142b6:	74 07                	je     0x4142bf
4142b8:	81 4e 14 00 00 00 10 	orl    $0x10000000,0x14(%esi)
4142bf:	5f                   	pop    %edi
4142c0:	8b c6                	mov    %esi,%eax
4142c2:	5e                   	pop    %esi
4142c3:	5b                   	pop    %ebx
4142c4:	8b e5                	mov    %ebp,%esp
4142c6:	5d                   	pop    %ebp
4142c7:	c3                   	ret
4142c8:	33 c0                	xor    %eax,%eax
4142ca:	50                   	push   %eax
4142cb:	50                   	push   %eax
4142cc:	50                   	push   %eax
4142cd:	50                   	push   %eax
4142ce:	50                   	push   %eax
4142cf:	e8 87 39 ff ff       	call   0x407c5b
4142d4:	cc                   	int3
4142d5:	8b ff                	mov    %edi,%edi
4142d7:	55                   	push   %ebp
4142d8:	8b ec                	mov    %esp,%ebp
4142da:	51                   	push   %ecx
4142db:	56                   	push   %esi
4142dc:	8b 75 08             	mov    0x8(%ebp),%esi
4142df:	8b c6                	mov    %esi,%eax
4142e1:	83 e0 3f             	and    $0x3f,%eax
4142e4:	8b d6                	mov    %esi,%edx
4142e6:	c1 fa 06             	sar    $0x6,%edx
4142e9:	6b c8 30             	imul   $0x30,%eax,%ecx
4142ec:	8b 04 95 c0 41 42 00 	mov    0x4241c0(,%edx,4),%eax
4142f3:	8a 44 08 28          	mov    0x28(%eax,%ecx,1),%al
4142f7:	a8 48                	test   $0x48,%al
4142f9:	74 04                	je     0x4142ff
4142fb:	33 c0                	xor    %eax,%eax
4142fd:	eb 33                	jmp    0x414332
4142ff:	84 c0                	test   %al,%al
414301:	79 f8                	jns    0x4142fb
414303:	53                   	push   %ebx
414304:	57                   	push   %edi
414305:	6a 02                	push   $0x2
414307:	6a ff                	push   $0xffffffff
414309:	6a ff                	push   $0xffffffff
41430b:	56                   	push   %esi
41430c:	e8 00 a0 ff ff       	call   0x40e311
414311:	8b f8                	mov    %eax,%edi
414313:	8b da                	mov    %edx,%ebx
414315:	8b cf                	mov    %edi,%ecx
414317:	83 c4 10             	add    $0x10,%esp
41431a:	23 cb                	and    %ebx,%ecx
41431c:	83 f9 ff             	cmp    $0xffffffff,%ecx
41431f:	75 16                	jne    0x414337
414321:	e8 ce 39 ff ff       	call   0x407cf4
414326:	81 38 83 00 00 00    	cmpl   $0x83,(%eax)
41432c:	75 4e                	jne    0x41437c
41432e:	33 c0                	xor    %eax,%eax
414330:	5f                   	pop    %edi
414331:	5b                   	pop    %ebx
414332:	5e                   	pop    %esi
414333:	8b e5                	mov    %ebp,%esp
414335:	5d                   	pop    %ebp
414336:	c3                   	ret
414337:	33 c0                	xor    %eax,%eax
414339:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
41433d:	8d 45 fc             	lea    -0x4(%ebp),%eax
414340:	6a 01                	push   $0x1
414342:	50                   	push   %eax
414343:	56                   	push   %esi
414344:	e8 9c 09 00 00       	call   0x414ce5
414349:	83 c4 0c             	add    $0xc,%esp
41434c:	85 c0                	test   %eax,%eax
41434e:	75 17                	jne    0x414367
414350:	66 83 7d fc 1a       	cmpw   $0x1a,-0x4(%ebp)
414355:	75 10                	jne    0x414367
414357:	53                   	push   %ebx
414358:	57                   	push   %edi
414359:	56                   	push   %esi
41435a:	e8 b2 1a 00 00       	call   0x415e11
41435f:	83 c4 0c             	add    $0xc,%esp
414362:	83 f8 ff             	cmp    $0xffffffff,%eax
414365:	74 15                	je     0x41437c
414367:	33 c0                	xor    %eax,%eax
414369:	50                   	push   %eax
41436a:	50                   	push   %eax
41436b:	50                   	push   %eax
41436c:	56                   	push   %esi
41436d:	e8 9f 9f ff ff       	call   0x40e311
414372:	23 c2                	and    %edx,%eax
414374:	83 c4 10             	add    $0x10,%esp
414377:	83 f8 ff             	cmp    $0xffffffff,%eax
41437a:	75 b2                	jne    0x41432e
41437c:	e8 86 39 ff ff       	call   0x407d07
414381:	8b 00                	mov    (%eax),%eax
414383:	eb ab                	jmp    0x414330
414385:	8b ff                	mov    %edi,%edi
414387:	55                   	push   %ebp
414388:	8b ec                	mov    %esp,%ebp
41438a:	83 ec 44             	sub    $0x44,%esp
41438d:	53                   	push   %ebx
41438e:	56                   	push   %esi
41438f:	57                   	push   %edi
414390:	ff 75 1c             	push   0x1c(%ebp)
414393:	8d 45 bc             	lea    -0x44(%ebp),%eax
414396:	ff 75 18             	push   0x18(%ebp)
414399:	ff 75 14             	push   0x14(%ebp)
41439c:	50                   	push   %eax
41439d:	e8 b7 fd ff ff       	call   0x414159
4143a2:	83 c4 10             	add    $0x10,%esp
4143a5:	8d 7d d4             	lea    -0x2c(%ebp),%edi
4143a8:	8b f0                	mov    %eax,%esi
4143aa:	6a 06                	push   $0x6
4143ac:	59                   	pop    %ecx
4143ad:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4143af:	83 ce ff             	or     $0xffffffff,%esi
4143b2:	39 75 e0             	cmp    %esi,-0x20(%ebp)
4143b5:	75 19                	jne    0x4143d0
4143b7:	e8 38 39 ff ff       	call   0x407cf4
4143bc:	83 20 00             	andl   $0x0,(%eax)
4143bf:	8b 45 0c             	mov    0xc(%ebp),%eax
4143c2:	89 30                	mov    %esi,(%eax)
4143c4:	e8 3e 39 ff ff       	call   0x407d07
4143c9:	8b 00                	mov    (%eax),%eax