408f62:	33 c0                	xor    %eax,%eax
408f64:	c2 08 00             	ret    $0x8
408f67:	b8 01 40 00 80       	mov    $0x80004001,%eax
408f6c:	c2 08 00             	ret    $0x8
408f6f:	83 79 0c 00          	cmpl   $0x0,0xc(%ecx)
408f73:	75 03                	jne    0x408f78
408f75:	33 c0                	xor    %eax,%eax
408f77:	c3                   	ret
408f78:	8b 41 0c             	mov    0xc(%ecx),%eax
408f7b:	8b 08                	mov    (%eax),%ecx
408f7d:	6a 00                	push   $0x0
408f7f:	50                   	push   %eax
408f80:	ff 51 0c             	call   *0xc(%ecx)
408f83:	c3                   	ret
408f84:	55                   	push   %ebp
408f85:	8b ec                	mov    %esp,%ebp
408f87:	53                   	push   %ebx
408f88:	33 c0                	xor    %eax,%eax
408f8a:	39 45 08             	cmp    %eax,0x8(%ebp)
408f8d:	56                   	push   %esi
408f8e:	57                   	push   %edi
408f8f:	0f 84 b1 00 00 00    	je     0x409046
408f95:	8b 75 0c             	mov    0xc(%ebp),%esi
408f98:	3b f0                	cmp    %eax,%esi
408f9a:	0f 84 a6 00 00 00    	je     0x409046
408fa0:	8b 5d 14             	mov    0x14(%ebp),%ebx
408fa3:	3b d8                	cmp    %eax,%ebx
408fa5:	75 0a                	jne    0x408fb1
408fa7:	b8 03 40 00 80       	mov    $0x80004003,%eax
408fac:	e9 9a 00 00 00       	jmp    0x40904b
408fb1:	8b 7d 10             	mov    0x10(%ebp),%edi
408fb4:	89 03                	mov    %eax,(%ebx)
408fb6:	39 07                	cmp    %eax,(%edi)
408fb8:	75 17                	jne    0x408fd1
408fba:	39 47 04             	cmp    %eax,0x4(%edi)
408fbd:	75 12                	jne    0x408fd1
408fbf:	81 7f 08 c0 00 00 00 	cmpl   $0xc0,0x8(%edi)
408fc6:	75 09                	jne    0x408fd1
408fc8:	81 7f 0c 00 00 00 46 	cmpl   $0x46000000,0xc(%edi)
408fcf:	74 63                	je     0x409034
408fd1:	8b 4e 08             	mov    0x8(%esi),%ecx
408fd4:	3b c8                	cmp    %eax,%ecx
408fd6:	74 55                	je     0x40902d
408fd8:	8b 06                	mov    (%esi),%eax
408fda:	33 d2                	xor    %edx,%edx
408fdc:	85 c0                	test   %eax,%eax
408fde:	0f 94 c2             	sete   %dl
408fe1:	85 d2                	test   %edx,%edx
408fe3:	89 55 0c             	mov    %edx,0xc(%ebp)
408fe6:	75 1e                	jne    0x409006
408fe8:	8b 10                	mov    (%eax),%edx
408fea:	3b 17                	cmp    (%edi),%edx
408fec:	75 35                	jne    0x409023
408fee:	8b 50 04             	mov    0x4(%eax),%edx
408ff1:	3b 57 04             	cmp    0x4(%edi),%edx
408ff4:	75 2d                	jne    0x409023
408ff6:	8b 50 08             	mov    0x8(%eax),%edx
408ff9:	3b 57 08             	cmp    0x8(%edi),%edx
408ffc:	75 25                	jne    0x409023
408ffe:	8b 40 0c             	mov    0xc(%eax),%eax
409001:	3b 47 0c             	cmp    0xc(%edi),%eax
409004:	75 1d                	jne    0x409023
409006:	83 f9 01             	cmp    $0x1,%ecx
409009:	74 29                	je     0x409034
40900b:	ff 76 04             	push   0x4(%esi)
40900e:	53                   	push   %ebx
40900f:	57                   	push   %edi
409010:	ff 75 08             	push   0x8(%ebp)
409013:	ff d1                	call   *%ecx
409015:	85 c0                	test   %eax,%eax
409017:	74 32                	je     0x40904b
409019:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
40901d:	75 04                	jne    0x409023
40901f:	85 c0                	test   %eax,%eax
409021:	7c 28                	jl     0x40904b
409023:	8b 4e 14             	mov    0x14(%esi),%ecx
409026:	83 c6 0c             	add    $0xc,%esi
409029:	85 c9                	test   %ecx,%ecx
40902b:	75 ab                	jne    0x408fd8
40902d:	b8 02 40 00 80       	mov    $0x80004002,%eax
409032:	eb 17                	jmp    0x40904b
409034:	8b 76 04             	mov    0x4(%esi),%esi
409037:	03 75 08             	add    0x8(%ebp),%esi
40903a:	8b 06                	mov    (%esi),%eax
40903c:	56                   	push   %esi
40903d:	ff 50 04             	call   *0x4(%eax)
409040:	89 33                	mov    %esi,(%ebx)
409042:	33 c0                	xor    %eax,%eax
409044:	eb 05                	jmp    0x40904b
409046:	b8 57 00 07 80       	mov    $0x80070057,%eax
40904b:	5f                   	pop    %edi
40904c:	5e                   	pop    %esi
40904d:	5b                   	pop    %ebx
40904e:	5d                   	pop    %ebp
40904f:	c2 10 00             	ret    $0x10
409052:	8b 41 34             	mov    0x34(%ecx),%eax
409055:	85 c0                	test   %eax,%eax
409057:	75 09                	jne    0x409062
409059:	ff 71 1c             	push   0x1c(%ecx)
40905c:	ff 15 d8 07 4b 00    	call   *0x4b07d8
409062:	50                   	push   %eax
409063:	e8 3a bc 03 00       	call   0x444ca2
409068:	c3                   	ret
409069:	cc                   	int3
40906a:	cc                   	int3
40906b:	cc                   	int3
40906c:	cc                   	int3
40906d:	cc                   	int3
40906e:	cc                   	int3
40906f:	cc                   	int3
409070:	8b c1                	mov    %ecx,%eax
409072:	c3                   	ret
409073:	8b c1                	mov    %ecx,%eax
409075:	8b 4c 24 04          	mov    0x4(%esp),%ecx
409079:	83 20 00             	andl   $0x0,(%eax)
40907c:	89 48 04             	mov    %ecx,0x4(%eax)
40907f:	c2 04 00             	ret    $0x4
409082:	8b 44 24 04          	mov    0x4(%esp),%eax
409086:	89 41 04             	mov    %eax,0x4(%ecx)
409089:	c2 04 00             	ret    $0x4
40908c:	8b c1                	mov    %ecx,%eax
40908e:	83 48 04 ff          	orl    $0xffffffff,0x4(%eax)
409092:	33 c9                	xor    %ecx,%ecx
409094:	89 48 08             	mov    %ecx,0x8(%eax)
409097:	89 48 1c             	mov    %ecx,0x1c(%eax)
40909a:	89 48 20             	mov    %ecx,0x20(%eax)
40909d:	c3                   	ret
40909e:	33 c0                	xor    %eax,%eax
4090a0:	39 41 0c             	cmp    %eax,0xc(%ecx)
4090a3:	0f 94 c0             	sete   %al
4090a6:	c3                   	ret
4090a7:	8b 41 0c             	mov    0xc(%ecx),%eax
4090aa:	f7 d8                	neg    %eax
4090ac:	1b c0                	sbb    %eax,%eax
4090ae:	c3                   	ret
4090af:	8b c1                	mov    %ecx,%eax
4090b1:	c3                   	ret
4090b2:	8b c1                	mov    %ecx,%eax
4090b4:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4090b8:	89 08                	mov    %ecx,(%eax)
4090ba:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4090be:	89 48 04             	mov    %ecx,0x4(%eax)
4090c1:	c2 08 00             	ret    $0x8
4090c4:	56                   	push   %esi
4090c5:	ff 74 24 08          	push   0x8(%esp)
4090c9:	8b f1                	mov    %ecx,%esi
4090cb:	56                   	push   %esi
4090cc:	ff 15 44 07 4b 00    	call   *0x4b0744
4090d2:	8b c6                	mov    %esi,%eax
4090d4:	5e                   	pop    %esi
4090d5:	c2 04 00             	ret    $0x4
4090d8:	ff 74 24 08          	push   0x8(%esp)
4090dc:	ff 74 24 08          	push   0x8(%esp)
4090e0:	51                   	push   %ecx
4090e1:	ff 15 88 06 4b 00    	call   *0x4b0688
4090e7:	c2 08 00             	ret    $0x8
4090ea:	8b c1                	mov    %ecx,%eax
4090ec:	83 60 04 00          	andl   $0x0,0x4(%eax)
4090f0:	c7 00 70 b6 48 00    	movl   $0x48b670,(%eax)
4090f6:	c3                   	ret
4090f7:	c7 01 70 b6 48 00    	movl   $0x48b670,(%ecx)
4090fd:	e9 b9 65 04 00       	jmp    0x44f6bb
409102:	ff 74 24 08          	push   0x8(%esp)
409106:	ff 74 24 08          	push   0x8(%esp)
40910a:	ff 71 04             	push   0x4(%ecx)
40910d:	ff 15 94 00 4b 00    	call   *0x4b0094
409113:	c2 08 00             	ret    $0x8
409116:	8b c1                	mov    %ecx,%eax
409118:	83 60 04 00          	andl   $0x0,0x4(%eax)
40911c:	c7 00 80 b6 48 00    	movl   $0x48b680,(%eax)
409122:	c3                   	ret
409123:	c7 01 70 b6 48 00    	movl   $0x48b670,(%ecx)
409129:	e9 8d 65 04 00       	jmp    0x44f6bb
40912e:	56                   	push   %esi
40912f:	ff 74 24 08          	push   0x8(%esp)
409133:	8b f1                	mov    %ecx,%esi
409135:	ff 15 90 00 4b 00    	call   *0x4b0090
40913b:	50                   	push   %eax
40913c:	8b ce                	mov    %esi,%ecx
40913e:	e8 21 65 04 00       	call   0x44f664
409143:	5e                   	pop    %esi
409144:	c2 04 00             	ret    $0x4
409147:	8b c1                	mov    %ecx,%eax
409149:	83 60 04 00          	andl   $0x0,0x4(%eax)
40914d:	c7 00 90 b6 48 00    	movl   $0x48b690,(%eax)
409153:	c3                   	ret
409154:	c7 01 70 b6 48 00    	movl   $0x48b670,(%ecx)
40915a:	e9 5c 65 04 00       	jmp    0x44f6bb
40915f:	ff 74 24 04          	push   0x4(%esp)
409163:	6a 18                	push   $0x18
409165:	ff 71 04             	push   0x4(%ecx)
409168:	ff 15 94 00 4b 00    	call   *0x4b0094
40916e:	c2 04 00             	ret    $0x4
409171:	8b 44 24 04          	mov    0x4(%esp),%eax
409175:	85 c0                	test   %eax,%eax
409177:	56                   	push   %esi
409178:	8b f1                	mov    %ecx,%esi
40917a:	74 03                	je     0x40917f
40917c:	8b 40 04             	mov    0x4(%eax),%eax
40917f:	50                   	push   %eax
409180:	ff 15 8c 00 4b 00    	call   *0x4b008c
409186:	50                   	push   %eax
409187:	8b ce                	mov    %esi,%ecx
409189:	e8 d9 61 04 00       	call   0x44f367
40918e:	5e                   	pop    %esi
40918f:	c2 04 00             	ret    $0x4
409192:	8b 44 24 04          	mov    0x4(%esp),%eax
409196:	85 c0                	test   %eax,%eax
409198:	74 03                	je     0x40919d
40919a:	8b 40 04             	mov    0x4(%eax),%eax
40919d:	50                   	push   %eax
40919e:	ff 71 04             	push   0x4(%ecx)
4091a1:	e8 79 65 04 00       	call   0x44f71f
4091a6:	c2 04 00             	ret    $0x4
4091a9:	55                   	push   %ebp
4091aa:	8b ec                	mov    %esp,%ebp
4091ac:	8b 45 18             	mov    0x18(%ebp),%eax
4091af:	85 c0                	test   %eax,%eax
4091b1:	74 03                	je     0x4091b6
4091b3:	8b 40 04             	mov    0x4(%eax),%eax
4091b6:	ff 75 24             	push   0x24(%ebp)
4091b9:	ff 75 20             	push   0x20(%ebp)
4091bc:	ff 75 1c             	push   0x1c(%ebp)
4091bf:	50                   	push   %eax
4091c0:	ff 75 14             	push   0x14(%ebp)
4091c3:	ff 75 10             	push   0x10(%ebp)
4091c6:	ff 75 0c             	push   0xc(%ebp)
4091c9:	ff 75 08             	push   0x8(%ebp)
4091cc:	ff 71 04             	push   0x4(%ecx)
4091cf:	ff 15 88 00 4b 00    	call   *0x4b0088
4091d5:	5d                   	pop    %ebp
4091d6:	c2 20 00             	ret    $0x20
4091d9:	8b c1                	mov    %ecx,%eax
4091db:	83 60 04 00          	andl   $0x0,0x4(%eax)
4091df:	c7 00 a0 b6 48 00    	movl   $0x48b6a0,(%eax)
4091e5:	c3                   	ret
4091e6:	ff 74 24 08          	push   0x8(%esp)
4091ea:	ff 74 24 10          	push   0x10(%esp)
4091ee:	ff 74 24 0c          	push   0xc(%esp)
4091f2:	ff 71 04             	push   0x4(%ecx)
4091f5:	ff 15 84 06 4b 00    	call   *0x4b0684
4091fb:	c2 0c 00             	ret    $0xc
4091fe:	56                   	push   %esi
4091ff:	8b f1                	mov    %ecx,%esi
409201:	e8 f1 fe ff ff       	call   0x4090f7
409206:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
40920b:	74 07                	je     0x409214
40920d:	56                   	push   %esi
40920e:	e8 6d 6e 03 00       	call   0x440080
409213:	59                   	pop    %ecx
409214:	8b c6                	mov    %esi,%eax
409216:	5e                   	pop    %esi
409217:	c2 04 00             	ret    $0x4
40921a:	56                   	push   %esi
40921b:	8b f1                	mov    %ecx,%esi
40921d:	e8 01 ff ff ff       	call   0x409123
409222:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
409227:	74 07                	je     0x409230
409229:	56                   	push   %esi
40922a:	e8 51 6e 03 00       	call   0x440080
40922f:	59                   	pop    %ecx
409230:	8b c6                	mov    %esi,%eax
409232:	5e                   	pop    %esi
409233:	c2 04 00             	ret    $0x4
409236:	56                   	push   %esi
409237:	8b f1                	mov    %ecx,%esi
409239:	e8 16 ff ff ff       	call   0x409154
40923e:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
409243:	74 07                	je     0x40924c
409245:	56                   	push   %esi
409246:	e8 35 6e 03 00       	call   0x440080
40924b:	59                   	pop    %ecx
40924c:	8b c6                	mov    %esi,%eax
40924e:	5e                   	pop    %esi
40924f:	c2 04 00             	ret    $0x4
409252:	55                   	push   %ebp
409253:	8b ec                	mov    %esp,%ebp
409255:	ff 75 1c             	push   0x1c(%ebp)
409258:	8b 45 18             	mov    0x18(%ebp),%eax
40925b:	8b 00                	mov    (%eax),%eax
40925d:	8b 50 f4             	mov    -0xc(%eax),%edx
409260:	52                   	push   %edx
409261:	50                   	push   %eax
409262:	ff 75 14             	push   0x14(%ebp)
409265:	ff 75 10             	push   0x10(%ebp)
409268:	ff 75 0c             	push   0xc(%ebp)
40926b:	ff 75 08             	push   0x8(%ebp)
40926e:	ff 71 04             	push   0x4(%ecx)
409271:	ff 15 84 00 4b 00    	call   *0x4b0084
409277:	5d                   	pop    %ebp
409278:	c2 18 00             	ret    $0x18
40927b:	55                   	push   %ebp
40927c:	8b ec                	mov    %esp,%ebp
40927e:	51                   	push   %ecx
40927f:	51                   	push   %ecx
409280:	8b 45 0c             	mov    0xc(%ebp),%eax
409283:	8b 00                	mov    (%eax),%eax
409285:	8d 55 f8             	lea    -0x8(%ebp),%edx
409288:	52                   	push   %edx
409289:	ff 70 f4             	push   -0xc(%eax)
40928c:	50                   	push   %eax
40928d:	ff 71 08             	push   0x8(%ecx)
409290:	ff 15 80 00 4b 00    	call   *0x4b0080
409296:	8b 4d f8             	mov    -0x8(%ebp),%ecx
409299:	8b 45 08             	mov    0x8(%ebp),%eax
40929c:	89 08                	mov    %ecx,(%eax)
40929e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4092a1:	89 48 04             	mov    %ecx,0x4(%eax)
4092a4:	c9                   	leave
4092a5:	c2 08 00             	ret    $0x8
4092a8:	c7 01 a0 b6 48 00    	movl   $0x48b6a0,(%ecx)
4092ae:	e9 e6 e1 03 00       	jmp    0x447499
4092b3:	56                   	push   %esi
4092b4:	8b f1                	mov    %ecx,%esi
4092b6:	e8 ed ff ff ff       	call   0x4092a8
4092bb:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
4092c0:	74 07                	je     0x4092c9
4092c2:	56                   	push   %esi
4092c3:	e8 b8 6d 03 00       	call   0x440080
4092c8:	59                   	pop    %ecx
4092c9:	8b c6                	mov    %esi,%eax
4092cb:	5e                   	pop    %esi
4092cc:	c2 04 00             	ret    $0x4
4092cf:	8b 44 24 04          	mov    0x4(%esp),%eax
4092d3:	8b 08                	mov    (%eax),%ecx
4092d5:	8b 50 08             	mov    0x8(%eax),%edx
4092d8:	89 10                	mov    %edx,(%eax)
4092da:	89 48 08             	mov    %ecx,0x8(%eax)
4092dd:	c2 04 00             	ret    $0x4
4092e0:	56                   	push   %esi
4092e1:	ff 74 24 08          	push   0x8(%esp)
4092e5:	8b f1                	mov    %ecx,%esi
4092e7:	e8 d5 d3 ff ff       	call   0x4066c1
4092ec:	8b 44 24 0c          	mov    0xc(%esp),%eax
4092f0:	89 86 94 00 00 00    	mov    %eax,0x94(%esi)
4092f6:	c7 06 10 b9 48 00    	movl   $0x48b910,(%esi)
4092fc:	8b c6                	mov    %esi,%eax
4092fe:	5e                   	pop    %esi
4092ff:	c2 08 00             	ret    $0x8
409302:	c7 01 10 b9 48 00    	movl   $0x48b910,(%ecx)
409308:	c3                   	ret
409309:	56                   	push   %esi
40930a:	ff 74 24 08          	push   0x8(%esp)
40930e:	8b f1                	mov    %ecx,%esi
409310:	e8 ac d3 ff ff       	call   0x4066c1
409315:	8b 44 24 0c          	mov    0xc(%esp),%eax
409319:	89 86 94 00 00 00    	mov    %eax,0x94(%esi)
40931f:	c7 06 28 b9 48 00    	movl   $0x48b928,(%esi)
409325:	8b c6                	mov    %esi,%eax
409327:	5e                   	pop    %esi