404ed8:	50                   	push   %eax
404ed9:	66 89 94 24 22 02 00 	mov    %dx,0x222(%esp)
404ee0:	00
404ee1:	e8 7a e6 ff ff       	call   0x403560
404ee6:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
404eea:	51                   	push   %ecx
404eeb:	e8 a0 d8 ff ff       	call   0x402790
404ef0:	83 c4 1c             	add    $0x1c,%esp
404ef3:	84 c0                	test   %al,%al
404ef5:	75 0d                	jne    0x404f04
404ef7:	b8 03 00 00 00       	mov    $0x3,%eax
404efc:	5e                   	pop    %esi
404efd:	81 c4 08 02 00 00    	add    $0x208,%esp
404f03:	c3                   	ret
404f04:	e8 27 e1 ff ff       	call   0x403030
404f09:	85 c0                	test   %eax,%eax
404f0b:	75 40                	jne    0x404f4d
404f0d:	56                   	push   %esi
404f0e:	68 90 c0 45 00       	push   $0x45c090
404f13:	50                   	push   %eax
404f14:	68 7c c0 45 00       	push   $0x45c07c
404f19:	e8 92 32 00 00       	call   0x4081b0
404f1e:	83 c4 10             	add    $0x10,%esp
404f21:	85 c0                	test   %eax,%eax
404f23:	75 28                	jne    0x404f4d
404f25:	8d 54 24 04          	lea    0x4(%esp),%edx
404f29:	52                   	push   %edx
404f2a:	68 b0 c0 45 00       	push   $0x45c0b0
404f2f:	50                   	push   %eax
404f30:	68 7c c0 45 00       	push   $0x45c07c
404f35:	e8 76 32 00 00       	call   0x4081b0
404f3a:	83 c4 10             	add    $0x10,%esp
404f3d:	85 c0                	test   %eax,%eax
404f3f:	75 0c                	jne    0x404f4d
404f41:	6a 01                	push   $0x1
404f43:	e8 d8 dd ff ff       	call   0x402d20
404f48:	83 c4 04             	add    $0x4,%esp
404f4b:	33 c0                	xor    %eax,%eax
404f4d:	5e                   	pop    %esi
404f4e:	81 c4 08 02 00 00    	add    $0x208,%esp
404f54:	c3                   	ret
404f55:	cc                   	int3
404f56:	cc                   	int3
404f57:	cc                   	int3
404f58:	cc                   	int3
404f59:	cc                   	int3
404f5a:	cc                   	int3
404f5b:	cc                   	int3
404f5c:	cc                   	int3
404f5d:	cc                   	int3
404f5e:	cc                   	int3
404f5f:	cc                   	int3
404f60:	81 ec 28 08 00 00    	sub    $0x828,%esp
404f66:	53                   	push   %ebx
404f67:	55                   	push   %ebp
404f68:	56                   	push   %esi
404f69:	57                   	push   %edi
404f6a:	33 ff                	xor    %edi,%edi
404f6c:	66 39 3d 30 03 47 00 	cmp    %di,0x470330
404f73:	74 07                	je     0x404f7c
404f75:	b8 30 03 47 00       	mov    $0x470330,%eax
404f7a:	eb 33                	jmp    0x404faf
404f7c:	68 04 01 00 00       	push   $0x104
404f81:	68 30 03 47 00       	push   $0x470330
404f86:	68 90 c0 45 00       	push   $0x45c090
404f8b:	57                   	push   %edi
404f8c:	68 7c c0 45 00       	push   $0x45c07c
404f91:	e8 1a 33 00 00       	call   0x4082b0
404f96:	83 c4 14             	add    $0x14,%esp
404f99:	85 c0                	test   %eax,%eax
404f9b:	75 10                	jne    0x404fad
404f9d:	66 39 3d 30 03 47 00 	cmp    %di,0x470330
404fa4:	74 07                	je     0x404fad
404fa6:	b8 30 03 47 00       	mov    $0x470330,%eax
404fab:	eb 02                	jmp    0x404faf
404fad:	33 c0                	xor    %eax,%eax
404faf:	50                   	push   %eax
404fb0:	68 d4 c0 45 00       	push   $0x45c0d4
404fb5:	8d 84 24 30 04 00 00 	lea    0x430(%esp),%eax
404fbc:	68 04 01 00 00       	push   $0x104
404fc1:	50                   	push   %eax
404fc2:	e8 98 b6 02 00       	call   0x43065f
404fc7:	8b 94 24 4c 08 00 00 	mov    0x84c(%esp),%edx
404fce:	52                   	push   %edx
404fcf:	68 c8 c1 45 00       	push   $0x45c1c8
404fd4:	8d 44 24 30          	lea    0x30(%esp),%eax
404fd8:	33 c9                	xor    %ecx,%ecx
404fda:	68 04 01 00 00       	push   $0x104
404fdf:	50                   	push   %eax
404fe0:	66 89 8c 24 4e 06 00 	mov    %cx,0x64e(%esp)
404fe7:	00
404fe8:	e8 72 b6 02 00       	call   0x43065f
404fed:	33 c9                	xor    %ecx,%ecx
404fef:	83 c4 20             	add    $0x20,%esp
404ff2:	66 89 8c 24 1e 02 00 	mov    %cx,0x21e(%esp)
404ff9:	00
404ffa:	66 39 3d 30 03 47 00 	cmp    %di,0x470330
405001:	74 07                	je     0x40500a
405003:	b8 30 03 47 00       	mov    $0x470330,%eax
405008:	eb 33                	jmp    0x40503d
40500a:	68 04 01 00 00       	push   $0x104
40500f:	68 30 03 47 00       	push   $0x470330
405014:	68 90 c0 45 00       	push   $0x45c090
405019:	57                   	push   %edi
40501a:	68 7c c0 45 00       	push   $0x45c07c
40501f:	e8 8c 32 00 00       	call   0x4082b0
405024:	83 c4 14             	add    $0x14,%esp
405027:	85 c0                	test   %eax,%eax
405029:	75 10                	jne    0x40503b
40502b:	66 39 3d 30 03 47 00 	cmp    %di,0x470330
405032:	74 07                	je     0x40503b
405034:	b8 30 03 47 00       	mov    $0x470330,%eax
405039:	eb 02                	jmp    0x40503d
40503b:	33 c0                	xor    %eax,%eax
40503d:	50                   	push   %eax
40503e:	68 c0 c8 45 00       	push   $0x45c8c0
405043:	8d 94 24 38 06 00 00 	lea    0x638(%esp),%edx
40504a:	68 04 01 00 00       	push   $0x104
40504f:	52                   	push   %edx
405050:	e8 0a b6 02 00       	call   0x43065f
405055:	8d 4c 24 28          	lea    0x28(%esp),%ecx
405059:	51                   	push   %ecx
40505a:	68 ac c8 45 00       	push   $0x45c8ac
40505f:	8d 94 24 38 02 00 00 	lea    0x238(%esp),%edx
405066:	33 c0                	xor    %eax,%eax
405068:	68 04 01 00 00       	push   $0x104
40506d:	52                   	push   %edx
40506e:	66 89 84 24 56 08 00 	mov    %ax,0x856(%esp)
405075:	00
405076:	e8 e4 b5 02 00       	call   0x43065f
40507b:	8d 8c 24 40 02 00 00 	lea    0x240(%esp),%ecx
405082:	33 c0                	xor    %eax,%eax
405084:	51                   	push   %ecx
405085:	66 89 84 24 4a 04 00 	mov    %ax,0x44a(%esp)
40508c:	00
40508d:	e8 ce e4 ff ff       	call   0x403560
405092:	8b 2d 60 33 47 00    	mov    0x473360,%ebp
405098:	83 c4 24             	add    $0x24,%esp
40509b:	8d 54 24 14          	lea    0x14(%esp),%edx
40509f:	52                   	push   %edx
4050a0:	57                   	push   %edi
4050a1:	8d 44 24 18          	lea    0x18(%esp),%eax
4050a5:	50                   	push   %eax
4050a6:	57                   	push   %edi
4050a7:	57                   	push   %edi
4050a8:	6a 04                	push   $0x4
4050aa:	6a 01                	push   $0x1
4050ac:	8d 8c 24 44 04 00 00 	lea    0x444(%esp),%ecx
4050b3:	51                   	push   %ecx
4050b4:	89 7c 24 34          	mov    %edi,0x34(%esp)
4050b8:	89 7c 24 30          	mov    %edi,0x30(%esp)
4050bc:	ff d5                	call   *%ebp
4050be:	8b f0                	mov    %eax,%esi
4050c0:	3b f7                	cmp    %edi,%esi
4050c2:	75 31                	jne    0x4050f5
4050c4:	8b 54 24 10          	mov    0x10(%esp),%edx
4050c8:	57                   	push   %edi
4050c9:	52                   	push   %edx
4050ca:	57                   	push   %edi
4050cb:	57                   	push   %edi
4050cc:	8b 3d 5c 33 47 00    	mov    0x47335c,%edi
4050d2:	68 04 00 00 80       	push   $0x80000004
4050d7:	6a 01                	push   $0x1
4050d9:	8d 44 24 30          	lea    0x30(%esp),%eax
4050dd:	50                   	push   %eax
4050de:	ff d7                	call   *%edi
4050e0:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4050e4:	8b 1d 60 34 47 00    	mov    0x473460,%ebx
4050ea:	51                   	push   %ecx
4050eb:	8b f0                	mov    %eax,%esi
4050ed:	ff d3                	call   *%ebx
4050ef:	33 c0                	xor    %eax,%eax
4050f1:	3b f0                	cmp    %eax,%esi
4050f3:	74 0d                	je     0x405102
4050f5:	5f                   	pop    %edi
4050f6:	8b c6                	mov    %esi,%eax
4050f8:	5e                   	pop    %esi
4050f9:	5d                   	pop    %ebp
4050fa:	5b                   	pop    %ebx
4050fb:	81 c4 28 08 00 00    	add    $0x828,%esp
405101:	c3                   	ret
405102:	8d 54 24 10          	lea    0x10(%esp),%edx
405106:	52                   	push   %edx
405107:	50                   	push   %eax
405108:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
40510c:	51                   	push   %ecx
40510d:	50                   	push   %eax
40510e:	50                   	push   %eax
40510f:	6a 04                	push   $0x4
405111:	6a 01                	push   $0x1
405113:	8d 94 24 4c 06 00 00 	lea    0x64c(%esp),%edx
40511a:	52                   	push   %edx
40511b:	89 44 24 30          	mov    %eax,0x30(%esp)
40511f:	89 44 24 34          	mov    %eax,0x34(%esp)
405123:	ff d5                	call   *%ebp
405125:	8b f0                	mov    %eax,%esi
405127:	85 f6                	test   %esi,%esi
405129:	75 ca                	jne    0x4050f5
40512b:	50                   	push   %eax
40512c:	8b 44 24 18          	mov    0x18(%esp),%eax
405130:	50                   	push   %eax
405131:	56                   	push   %esi
405132:	56                   	push   %esi
405133:	68 04 00 00 80       	push   $0x80000004
405138:	6a 01                	push   $0x1
40513a:	8d 8c 24 38 02 00 00 	lea    0x238(%esp),%ecx
405141:	51                   	push   %ecx
405142:	ff d7                	call   *%edi
405144:	8b 54 24 10          	mov    0x10(%esp),%edx
405148:	52                   	push   %edx
405149:	8b f0                	mov    %eax,%esi
40514b:	ff d3                	call   *%ebx
40514d:	85 f6                	test   %esi,%esi
40514f:	75 a4                	jne    0x4050f5
405151:	8d 44 24 18          	lea    0x18(%esp),%eax
405155:	50                   	push   %eax
405156:	e8 05 e0 ff ff       	call   0x403160
40515b:	83 c4 04             	add    $0x4,%esp
40515e:	5f                   	pop    %edi
40515f:	5e                   	pop    %esi
405160:	5d                   	pop    %ebp
405161:	5b                   	pop    %ebx
405162:	81 c4 28 08 00 00    	add    $0x828,%esp
405168:	c3                   	ret
405169:	cc                   	int3
40516a:	cc                   	int3
40516b:	cc                   	int3
40516c:	cc                   	int3
40516d:	cc                   	int3
40516e:	cc                   	int3
40516f:	cc                   	int3
405170:	53                   	push   %ebx
405171:	56                   	push   %esi
405172:	8b 74 24 10          	mov    0x10(%esp),%esi
405176:	8b c6                	mov    %esi,%eax
405178:	57                   	push   %edi
405179:	8d 50 01             	lea    0x1(%eax),%edx
40517c:	8d 64 24 00          	lea    0x0(%esp),%esp
405180:	8a 08                	mov    (%eax),%cl
405182:	40                   	inc    %eax
405183:	84 c9                	test   %cl,%cl
405185:	75 f9                	jne    0x405180
405187:	2b c2                	sub    %edx,%eax
405189:	40                   	inc    %eax
40518a:	50                   	push   %eax
40518b:	e8 86 b8 02 00       	call   0x430a16
405190:	8b f8                	mov    %eax,%edi
405192:	8b c6                	mov    %esi,%eax
405194:	83 c4 04             	add    $0x4,%esp
405197:	8d 50 01             	lea    0x1(%eax),%edx
40519a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
4051a0:	8a 08                	mov    (%eax),%cl
4051a2:	40                   	inc    %eax
4051a3:	84 c9                	test   %cl,%cl
4051a5:	75 f9                	jne    0x4051a0
4051a7:	8b 5c 24 10          	mov    0x10(%esp),%ebx
4051ab:	2b c2                	sub    %edx,%eax
4051ad:	6a 00                	push   $0x0
4051af:	40                   	inc    %eax
4051b0:	50                   	push   %eax
4051b1:	57                   	push   %edi
4051b2:	53                   	push   %ebx
4051b3:	e8 98 e5 ff ff       	call   0x403750
4051b8:	83 c4 10             	add    $0x10,%esp
4051bb:	85 c0                	test   %eax,%eax
4051bd:	75 48                	jne    0x405207
4051bf:	8b cf                	mov    %edi,%ecx
4051c1:	8b c6                	mov    %esi,%eax
4051c3:	8a 10                	mov    (%eax),%dl
4051c5:	3a 11                	cmp    (%ecx),%dl
4051c7:	75 1a                	jne    0x4051e3
4051c9:	84 d2                	test   %dl,%dl
4051cb:	74 12                	je     0x4051df
4051cd:	8a 50 01             	mov    0x1(%eax),%dl
4051d0:	3a 51 01             	cmp    0x1(%ecx),%dl
4051d3:	75 0e                	jne    0x4051e3
4051d5:	83 c0 02             	add    $0x2,%eax
4051d8:	83 c1 02             	add    $0x2,%ecx
4051db:	84 d2                	test   %dl,%dl
4051dd:	75 e4                	jne    0x4051c3
4051df:	33 c0                	xor    %eax,%eax
4051e1:	eb 05                	jmp    0x4051e8
4051e3:	1b c0                	sbb    %eax,%eax
4051e5:	83 d8 ff             	sbb    $0xffffffff,%eax
4051e8:	85 c0                	test   %eax,%eax
4051ea:	75 1b                	jne    0x405207
4051ec:	8b 44 24 18          	mov    0x18(%esp),%eax
4051f0:	57                   	push   %edi
4051f1:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
4051f7:	33 f6                	xor    %esi,%esi
4051f9:	e8 9f b7 02 00       	call   0x43099d
4051fe:	83 c4 04             	add    $0x4,%esp
405201:	5f                   	pop    %edi
405202:	8b c6                	mov    %esi,%eax
405204:	5e                   	pop    %esi
405205:	5b                   	pop    %ebx
405206:	c3                   	ret
405207:	8b 4c 24 18          	mov    0x18(%esp),%ecx
40520b:	6a 01                	push   $0x1
40520d:	56                   	push   %esi
40520e:	53                   	push   %ebx
40520f:	c7 01 01 00 00 00    	movl   $0x1,(%ecx)
405215:	e8 26 e4 ff ff       	call   0x403640
40521a:	83 c4 0c             	add    $0xc,%esp
40521d:	57                   	push   %edi
40521e:	8b f0                	mov    %eax,%esi
405220:	e8 78 b7 02 00       	call   0x43099d
405225:	83 c4 04             	add    $0x4,%esp
405228:	5f                   	pop    %edi
405229:	8b c6                	mov    %esi,%eax
40522b:	5e                   	pop    %esi
40522c:	5b                   	pop    %ebx
40522d:	c3                   	ret
40522e:	cc                   	int3
40522f:	cc                   	int3
405230:	51                   	push   %ecx
405231:	8b 0d 48 07 47 00    	mov    0x470748,%ecx
405237:	85 c9                	test   %ecx,%ecx
405239:	75 13                	jne    0x40524e
40523b:	68 60 c0 45 00       	push   $0x45c060
405240:	ff 15 38 34 47 00    	call   *0x473438
405246:	8b c8                	mov    %eax,%ecx
405248:	89 0d 48 07 47 00    	mov    %ecx,0x470748
40524e:	a1 4c 07 47 00       	mov    0x47074c,%eax
405253:	85 c0                	test   %eax,%eax
405255:	75 1d                	jne    0x405274
405257:	85 c9                	test   %ecx,%ecx
405259:	74 15                	je     0x405270
40525b:	68 50 c0 45 00       	push   $0x45c050
405260:	51                   	push   %ecx
405261:	ff 15 34 34 47 00    	call   *0x473434
405267:	a3 4c 07 47 00       	mov    %eax,0x47074c
40526c:	85 c0                	test   %eax,%eax
40526e:	75 04                	jne    0x405274
405270:	32 c0                	xor    %al,%al
405272:	59                   	pop    %ecx
405273:	c3                   	ret
405274:	8b 54 24 08          	mov    0x8(%esp),%edx
405278:	8d 0c 24             	lea    (%esp),%ecx
40527b:	51                   	push   %ecx
40527c:	52                   	push   %edx
40527d:	ff d0                	call   *%eax
40527f:	85 c0                	test   %eax,%eax
405281:	74 ed                	je     0x405270
405283:	33 c0                	xor    %eax,%eax
405285:	39 04 24             	cmp    %eax,(%esp)
405288:	0f 95 c0             	setne  %al
40528b:	59                   	pop    %ecx
40528c:	c3                   	ret
40528d:	cc                   	int3