404f18:	75 14                	jne    0x404f2e
404f1a:	68 58 ec 00 00       	push   $0xec58
404f1f:	57                   	push   %edi
404f20:	e8 54 1f 00 00       	call   0x406e79
404f25:	59                   	pop    %ecx
404f26:	50                   	push   %eax
404f27:	e8 b1 ca ff ff       	call   0x4019dd
404f2c:	eb 14                	jmp    0x404f42
404f2e:	68 57 ec 00 00       	push   $0xec57
404f33:	57                   	push   %edi
404f34:	e8 40 1f 00 00       	call   0x406e79
404f39:	59                   	pop    %ecx
404f3a:	50                   	push   %eax
404f3b:	e8 9d ca ff ff       	call   0x4019dd
404f40:	8b f7                	mov    %edi,%esi
404f42:	83 c4 0c             	add    $0xc,%esp
404f45:	8b c6                	mov    %esi,%eax
404f47:	5f                   	pop    %edi
404f48:	eb 07                	jmp    0x404f51
404f4a:	6a 02                	push   $0x2
404f4c:	eb 02                	jmp    0x404f50
404f4e:	6a 03                	push   $0x3
404f50:	58                   	pop    %eax
404f51:	8b 4d fc             	mov    -0x4(%ebp),%ecx
404f54:	5e                   	pop    %esi
404f55:	33 cd                	xor    %ebp,%ecx
404f57:	5b                   	pop    %ebx
404f58:	e8 83 19 00 00       	call   0x4068e0
404f5d:	c9                   	leave
404f5e:	c2 14 00             	ret    $0x14
404f61:	cc                   	int3
404f62:	cc                   	int3
404f63:	cc                   	int3
404f64:	cc                   	int3
404f65:	cc                   	int3
404f66:	cc                   	int3
404f67:	cc                   	int3
404f68:	cc                   	int3
404f69:	cc                   	int3
404f6a:	cc                   	int3
404f6b:	cc                   	int3
404f6c:	cc                   	int3
404f6d:	cc                   	int3
404f6e:	cc                   	int3
404f6f:	cc                   	int3
404f70:	8b ff                	mov    %edi,%edi
404f72:	55                   	push   %ebp
404f73:	8b ec                	mov    %esp,%ebp
404f75:	81 ec fc 01 00 00    	sub    $0x1fc,%esp
404f7b:	a1 b4 71 40 00       	mov    0x4071b4,%eax
404f80:	33 c5                	xor    %ebp,%eax
404f82:	89 45 fc             	mov    %eax,-0x4(%ebp)
404f85:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
404f89:	8b 45 0c             	mov    0xc(%ebp),%eax
404f8c:	56                   	push   %esi
404f8d:	8b 75 18             	mov    0x18(%ebp),%esi
404f90:	57                   	push   %edi
404f91:	0f 84 0b 01 00 00    	je     0x4050a2
404f97:	85 c0                	test   %eax,%eax
404f99:	0f 85 03 01 00 00    	jne    0x4050a2
404f9f:	6a 50                	push   $0x50
404fa1:	8d 85 bc fe ff ff    	lea    -0x144(%ebp),%eax
404fa7:	33 ff                	xor    %edi,%edi
404fa9:	50                   	push   %eax
404faa:	68 bb 0b 00 00       	push   $0xbbb
404faf:	57                   	push   %edi
404fb0:	ff 15 64 81 40 00    	call   *0x408164
404fb6:	85 c0                	test   %eax,%eax
404fb8:	0f 84 e0 00 00 00    	je     0x40509e
404fbe:	6a 50                	push   $0x50
404fc0:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
404fc6:	50                   	push   %eax
404fc7:	68 bc 0b 00 00       	push   $0xbbc
404fcc:	57                   	push   %edi
404fcd:	ff 15 64 81 40 00    	call   *0x408164
404fd3:	85 c0                	test   %eax,%eax
404fd5:	0f 84 c3 00 00 00    	je     0x40509e
404fdb:	6a 50                	push   $0x50
404fdd:	8d 85 1c fe ff ff    	lea    -0x1e4(%ebp),%eax
404fe3:	50                   	push   %eax
404fe4:	68 bd 0b 00 00       	push   $0xbbd
404fe9:	57                   	push   %edi
404fea:	ff 15 64 81 40 00    	call   *0x408164
404ff0:	85 c0                	test   %eax,%eax
404ff2:	0f 84 a6 00 00 00    	je     0x40509e
404ff8:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
404ffe:	89 bd 0c fe ff ff    	mov    %edi,-0x1f4(%ebp)
405004:	89 85 14 fe ff ff    	mov    %eax,-0x1ec(%ebp)
40500a:	33 d2                	xor    %edx,%edx
40500c:	6a 02                	push   $0x2
40500e:	8d 85 bc fe ff ff    	lea    -0x144(%ebp),%eax
405014:	89 bd 04 fe ff ff    	mov    %edi,-0x1fc(%ebp)
40501a:	59                   	pop    %ecx
40501b:	89 85 10 fe ff ff    	mov    %eax,-0x1f0(%ebp)
405021:	8d 85 1c fe ff ff    	lea    -0x1e4(%ebp),%eax
405027:	89 85 18 fe ff ff    	mov    %eax,-0x1e8(%ebp)
40502d:	8d 85 04 fe ff ff    	lea    -0x1fc(%ebp),%eax
405033:	50                   	push   %eax
405034:	68 f0 4c 40 00       	push   $0x404cf0
405039:	56                   	push   %esi
40503a:	ff 75 14             	push   0x14(%ebp)
40503d:	89 8d 08 fe ff ff    	mov    %ecx,-0x1f8(%ebp)
405043:	51                   	push   %ecx
405044:	e8 96 d0 ff ff       	call   0x4020df
405049:	8b f0                	mov    %eax,%esi
40504b:	85 f6                	test   %esi,%esi
40504d:	75 4b                	jne    0x40509a
40504f:	8b 8d 04 fe ff ff    	mov    -0x1fc(%ebp),%ecx
405055:	85 c9                	test   %ecx,%ecx
405057:	75 17                	jne    0x405070
405059:	68 f3 eb 00 00       	push   $0xebf3
40505e:	6a 01                	push   $0x1
405060:	e8 14 1e 00 00       	call   0x406e79
405065:	59                   	pop    %ecx
405066:	50                   	push   %eax
405067:	e8 71 c9 ff ff       	call   0x4019dd
40506c:	59                   	pop    %ecx
40506d:	59                   	pop    %ecx
40506e:	eb 2a                	jmp    0x40509a
405070:	51                   	push   %ecx
405071:	39 bd 0c fe ff ff    	cmp    %edi,-0x1f4(%ebp)
405077:	75 09                	jne    0x405082
405079:	68 bc ec 00 00       	push   $0xecbc
40507e:	6a 01                	push   $0x1
405080:	eb 09                	jmp    0x40508b
405082:	33 f6                	xor    %esi,%esi
405084:	68 bb ec 00 00       	push   $0xecbb
405089:	46                   	inc    %esi
40508a:	56                   	push   %esi
40508b:	e8 e9 1d 00 00       	call   0x406e79
405090:	59                   	pop    %ecx
405091:	50                   	push   %eax
405092:	e8 46 c9 ff ff       	call   0x4019dd
405097:	83 c4 0c             	add    $0xc,%esp
40509a:	8b c6                	mov    %esi,%eax
40509c:	eb 07                	jmp    0x4050a5
40509e:	6a 02                	push   $0x2
4050a0:	eb 02                	jmp    0x4050a4
4050a2:	6a 03                	push   $0x3
4050a4:	58                   	pop    %eax
4050a5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4050a8:	5f                   	pop    %edi
4050a9:	33 cd                	xor    %ebp,%ecx
4050ab:	5e                   	pop    %esi
4050ac:	e8 2f 18 00 00       	call   0x4068e0
4050b1:	c9                   	leave
4050b2:	c2 14 00             	ret    $0x14
4050b5:	cc                   	int3
4050b6:	cc                   	int3
4050b7:	cc                   	int3
4050b8:	cc                   	int3
4050b9:	cc                   	int3
4050ba:	cc                   	int3
4050bb:	cc                   	int3
4050bc:	cc                   	int3
4050bd:	cc                   	int3
4050be:	cc                   	int3
4050bf:	cc                   	int3
4050c0:	8b ff                	mov    %edi,%edi
4050c2:	55                   	push   %ebp
4050c3:	8b ec                	mov    %esp,%ebp
4050c5:	81 ec fc 01 00 00    	sub    $0x1fc,%esp
4050cb:	a1 b4 71 40 00       	mov    0x4071b4,%eax
4050d0:	33 c5                	xor    %ebp,%eax
4050d2:	89 45 fc             	mov    %eax,-0x4(%ebp)
4050d5:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
4050d9:	8b 45 0c             	mov    0xc(%ebp),%eax
4050dc:	56                   	push   %esi
4050dd:	8b 75 18             	mov    0x18(%ebp),%esi
4050e0:	57                   	push   %edi
4050e1:	0f 84 0d 01 00 00    	je     0x4051f4
4050e7:	85 c0                	test   %eax,%eax
4050e9:	0f 85 05 01 00 00    	jne    0x4051f4
4050ef:	6a 50                	push   $0x50
4050f1:	8d 85 bc fe ff ff    	lea    -0x144(%ebp),%eax
4050f7:	33 ff                	xor    %edi,%edi
4050f9:	50                   	push   %eax
4050fa:	68 be 0b 00 00       	push   $0xbbe
4050ff:	57                   	push   %edi
405100:	ff 15 64 81 40 00    	call   *0x408164
405106:	85 c0                	test   %eax,%eax
405108:	0f 84 e2 00 00 00    	je     0x4051f0
40510e:	6a 50                	push   $0x50
405110:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
405116:	50                   	push   %eax
405117:	68 bf 0b 00 00       	push   $0xbbf
40511c:	57                   	push   %edi
40511d:	ff 15 64 81 40 00    	call   *0x408164
405123:	85 c0                	test   %eax,%eax
405125:	0f 84 c5 00 00 00    	je     0x4051f0
40512b:	6a 50                	push   $0x50
40512d:	8d 85 1c fe ff ff    	lea    -0x1e4(%ebp),%eax
405133:	50                   	push   %eax
405134:	68 c0 0b 00 00       	push   $0xbc0
405139:	57                   	push   %edi
40513a:	ff 15 64 81 40 00    	call   *0x408164
405140:	85 c0                	test   %eax,%eax
405142:	0f 84 a8 00 00 00    	je     0x4051f0
405148:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
40514e:	c7 85 08 fe ff ff 03 	movl   $0x3,-0x1f8(%ebp)
405155:	00 00 00
405158:	89 85 14 fe ff ff    	mov    %eax,-0x1ec(%ebp)
40515e:	33 d2                	xor    %edx,%edx
405160:	8d 85 bc fe ff ff    	lea    -0x144(%ebp),%eax
405166:	89 bd 0c fe ff ff    	mov    %edi,-0x1f4(%ebp)
40516c:	89 85 10 fe ff ff    	mov    %eax,-0x1f0(%ebp)
405172:	8d 85 1c fe ff ff    	lea    -0x1e4(%ebp),%eax
405178:	89 85 18 fe ff ff    	mov    %eax,-0x1e8(%ebp)
40517e:	8d 85 04 fe ff ff    	lea    -0x1fc(%ebp),%eax
405184:	50                   	push   %eax
405185:	68 f0 4c 40 00       	push   $0x404cf0
40518a:	56                   	push   %esi
40518b:	ff 75 14             	push   0x14(%ebp)
40518e:	89 bd 04 fe ff ff    	mov    %edi,-0x1fc(%ebp)
405194:	6a 02                	push   $0x2
405196:	e8 44 cf ff ff       	call   0x4020df
40519b:	8b f0                	mov    %eax,%esi
40519d:	85 f6                	test   %esi,%esi
40519f:	75 4b                	jne    0x4051ec
4051a1:	8b 8d 04 fe ff ff    	mov    -0x1fc(%ebp),%ecx
4051a7:	85 c9                	test   %ecx,%ecx
4051a9:	75 17                	jne    0x4051c2
4051ab:	68 f3 eb 00 00       	push   $0xebf3
4051b0:	6a 01                	push   $0x1
4051b2:	e8 c2 1c 00 00       	call   0x406e79
4051b7:	59                   	pop    %ecx
4051b8:	50                   	push   %eax
4051b9:	e8 1f c8 ff ff       	call   0x4019dd
4051be:	59                   	pop    %ecx
4051bf:	59                   	pop    %ecx
4051c0:	eb 2a                	jmp    0x4051ec
4051c2:	51                   	push   %ecx
4051c3:	39 bd 0c fe ff ff    	cmp    %edi,-0x1f4(%ebp)
4051c9:	75 09                	jne    0x4051d4
4051cb:	68 20 ed 00 00       	push   $0xed20
4051d0:	6a 01                	push   $0x1
4051d2:	eb 09                	jmp    0x4051dd
4051d4:	33 f6                	xor    %esi,%esi
4051d6:	68 1f ed 00 00       	push   $0xed1f
4051db:	46                   	inc    %esi
4051dc:	56                   	push   %esi
4051dd:	e8 97 1c 00 00       	call   0x406e79
4051e2:	59                   	pop    %ecx
4051e3:	50                   	push   %eax
4051e4:	e8 f4 c7 ff ff       	call   0x4019dd
4051e9:	83 c4 0c             	add    $0xc,%esp
4051ec:	8b c6                	mov    %esi,%eax
4051ee:	eb 07                	jmp    0x4051f7
4051f0:	6a 02                	push   $0x2
4051f2:	eb 02                	jmp    0x4051f6
4051f4:	6a 03                	push   $0x3
4051f6:	58                   	pop    %eax
4051f7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4051fa:	5f                   	pop    %edi
4051fb:	33 cd                	xor    %ebp,%ecx
4051fd:	5e                   	pop    %esi
4051fe:	e8 dd 16 00 00       	call   0x4068e0
405203:	c9                   	leave
405204:	c2 14 00             	ret    $0x14
405207:	cc                   	int3
405208:	cc                   	int3
405209:	cc                   	int3
40520a:	cc                   	int3
40520b:	cc                   	int3
40520c:	cc                   	int3
40520d:	cc                   	int3
40520e:	cc                   	int3
40520f:	cc                   	int3
405210:	8b ff                	mov    %edi,%edi
405212:	55                   	push   %ebp
405213:	8b ec                	mov    %esp,%ebp
405215:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
405219:	74 05                	je     0x405220
40521b:	6a 03                	push   $0x3
40521d:	58                   	pop    %eax
40521e:	eb 24                	jmp    0x405244
405220:	68 82 ed 00 00       	push   $0xed82
405225:	6a 01                	push   $0x1
405227:	e8 4d 1c 00 00       	call   0x406e79
40522c:	59                   	pop    %ecx
40522d:	50                   	push   %eax
40522e:	e8 aa c7 ff ff       	call   0x4019dd
405233:	59                   	pop    %ecx
405234:	59                   	pop    %ecx
405235:	e8 84 c8 ff ff       	call   0x401abe
40523a:	f7 d8                	neg    %eax
40523c:	1b c0                	sbb    %eax,%eax
40523e:	83 e0 fe             	and    $0xfffffffe,%eax
405241:	83 c0 02             	add    $0x2,%eax
405244:	5d                   	pop    %ebp
405245:	c2 14 00             	ret    $0x14
405248:	cc                   	int3
405249:	cc                   	int3
40524a:	cc                   	int3
40524b:	cc                   	int3
40524c:	cc                   	int3
40524d:	cc                   	int3
40524e:	cc                   	int3
40524f:	cc                   	int3
405250:	8b ff                	mov    %edi,%edi
405252:	55                   	push   %ebp
405253:	8b ec                	mov    %esp,%ebp
405255:	81 ec 14 02 00 00    	sub    $0x214,%esp
40525b:	a1 b4 71 40 00       	mov    0x4071b4,%eax
405260:	33 c5                	xor    %ebp,%eax
405262:	89 45 fc             	mov    %eax,-0x4(%ebp)
405265:	8b 45 18             	mov    0x18(%ebp),%eax
405268:	33 d2                	xor    %edx,%edx
40526a:	53                   	push   %ebx
40526b:	56                   	push   %esi
40526c:	6a 02                	push   $0x2
40526e:	5b                   	pop    %ebx
40526f:	89 95 ec fd ff ff    	mov    %edx,-0x214(%ebp)
405275:	39 55 0c             	cmp    %edx,0xc(%ebp)
405278:	0f 85 fe 00 00 00    	jne    0x40537c
40527e:	39 5d 14             	cmp    %ebx,0x14(%ebp)
405281:	0f 8c f5 00 00 00    	jl     0x40537c
405287:	8b 08                	mov    (%eax),%ecx
405289:	66 39 11             	cmp    %dx,(%ecx)
40528c:	0f 84 ea 00 00 00    	je     0x40537c
405292:	8b 40 04             	mov    0x4(%eax),%eax
405295:	89 85 f0 fd ff ff    	mov    %eax,-0x210(%ebp)
40529b:	66 39 10             	cmp    %dx,(%eax)
40529e:	0f 84 d8 00 00 00    	je     0x40537c
4052a4:	52                   	push   %edx
4052a5:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4052ab:	be 04 01 00 00       	mov    $0x104,%esi
4052b0:	50                   	push   %eax
4052b1:	56                   	push   %esi
4052b2:	51                   	push   %ecx
4052b3:	ff 15 5c 80 40 00    	call   *0x40805c
4052b9:	3b c6                	cmp    %esi,%eax
4052bb:	0f 83 b7 00 00 00    	jae    0x405378
4052c1:	85 c0                	test   %eax,%eax
4052c3:	0f 84 af 00 00 00    	je     0x405378
4052c9:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4052cf:	50                   	push   %eax
4052d0:	ff 15 68 80 40 00    	call   *0x408068
4052d6:	83 f8 ff             	cmp    $0xffffffff,%eax
4052d9:	0f 84 99 00 00 00    	je     0x405378
4052df:	68 a0 13 40 00       	push   $0x4013a0
4052e4:	ff 15 48 80 40 00    	call   *0x408048
4052ea:	8b f0                	mov    %eax,%esi
4052ec:	85 f6                	test   %esi,%esi
4052ee:	0f 84 84 00 00 00    	je     0x405378
4052f4:	57                   	push   %edi
4052f5:	68 b8 13 40 00       	push   $0x4013b8
4052fa:	56                   	push   %esi
4052fb:	ff 15 4c 80 40 00    	call   *0x40804c
405301:	8b f8                	mov    %eax,%edi