414ed5:	83 ec 10             	sub    $0x10,%esp
414ed8:	53                   	push   %ebx
414ed9:	56                   	push   %esi
414eda:	57                   	push   %edi
414edb:	ff 15 2c b1 44 00    	call   *0x44b12c
414ee1:	8b 7d 0c             	mov    0xc(%ebp),%edi
414ee4:	33 db                	xor    %ebx,%ebx
414ee6:	50                   	push   %eax
414ee7:	8d 45 f8             	lea    -0x8(%ebp),%eax
414eea:	89 5d f8             	mov    %ebx,-0x8(%ebp)
414eed:	89 5d f4             	mov    %ebx,-0xc(%ebp)
414ef0:	ff 77 04             	push   0x4(%edi)
414ef3:	89 5d f0             	mov    %ebx,-0x10(%ebp)
414ef6:	ff 37                	push   (%edi)
414ef8:	89 5d fc             	mov    %ebx,-0x4(%ebp)
414efb:	68 b0 3e 45 00       	push   $0x453eb0
414f00:	68 8c 42 45 00       	push   $0x45428c
414f05:	50                   	push   %eax
414f06:	e8 15 d0 fe ff       	call   0x401f20
414f0b:	8b f0                	mov    %eax,%esi
414f0d:	83 c4 18             	add    $0x18,%esp
414f10:	85 f6                	test   %esi,%esi
414f12:	79 12                	jns    0x414f26
414f14:	68 b4 42 45 00       	push   $0x4542b4
414f19:	56                   	push   %esi
414f1a:	e8 10 b2 02 00       	call   0x44012f
414f1f:	59                   	pop    %ecx
414f20:	59                   	pop    %ecx
414f21:	8b 4d fc             	mov    -0x4(%ebp),%ecx
414f24:	eb 67                	jmp    0x414f8d
414f26:	8d 45 f0             	lea    -0x10(%ebp),%eax
414f29:	50                   	push   %eax
414f2a:	8d 45 f4             	lea    -0xc(%ebp),%eax
414f2d:	50                   	push   %eax
414f2e:	e8 9a ea 02 00       	call   0x4439cd
414f33:	83 7d f4 05          	cmpl   $0x5,-0xc(%ebp)
414f37:	7c 0a                	jl     0x414f43
414f39:	b8 f4 42 45 00       	mov    $0x4542f4,%eax
414f3e:	39 5d 10             	cmp    %ebx,0x10(%ebp)
414f41:	75 05                	jne    0x414f48
414f43:	b8 e8 42 45 00       	mov    $0x4542e8,%eax
414f48:	8d 4d fc             	lea    -0x4(%ebp),%ecx
414f4b:	51                   	push   %ecx
414f4c:	ff 75 14             	push   0x14(%ebp)
414f4f:	53                   	push   %ebx
414f50:	53                   	push   %ebx
414f51:	50                   	push   %eax
414f52:	ff 75 f8             	push   -0x8(%ebp)
414f55:	ff 75 08             	push   0x8(%ebp)
414f58:	e8 ed eb 02 00       	call   0x443b4a
414f5d:	8b f0                	mov    %eax,%esi
414f5f:	85 f6                	test   %esi,%esi
414f61:	79 13                	jns    0x414f76
414f63:	ff 75 08             	push   0x8(%ebp)
414f66:	68 00 43 45 00       	push   $0x454300
414f6b:	56                   	push   %esi
414f6c:	e8 be b1 02 00       	call   0x44012f
414f71:	83 c4 0c             	add    $0xc,%esp
414f74:	eb ab                	jmp    0x414f21
414f76:	ff 75 fc             	push   -0x4(%ebp)
414f79:	ff 15 0c b2 44 00    	call   *0x44b20c
414f7f:	89 47 08             	mov    %eax,0x8(%edi)
414f82:	8b cb                	mov    %ebx,%ecx
414f84:	8b 45 fc             	mov    -0x4(%ebp),%eax
414f87:	89 47 0c             	mov    %eax,0xc(%edi)
414f8a:	89 4d fc             	mov    %ecx,-0x4(%ebp)
414f8d:	85 c9                	test   %ecx,%ecx
414f8f:	74 0a                	je     0x414f9b
414f91:	51                   	push   %ecx
414f92:	ff 15 d4 b0 44 00    	call   *0x44b0d4
414f98:	89 5d fc             	mov    %ebx,-0x4(%ebp)
414f9b:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
414f9e:	74 08                	je     0x414fa8
414fa0:	ff 75 f8             	push   -0x8(%ebp)
414fa3:	e8 47 05 03 00       	call   0x4454ef
414fa8:	5f                   	pop    %edi
414fa9:	8b c6                	mov    %esi,%eax
414fab:	5e                   	pop    %esi
414fac:	5b                   	pop    %ebx
414fad:	8b e5                	mov    %ebp,%esp
414faf:	5d                   	pop    %ebp
414fb0:	c2 10 00             	ret    $0x10
414fb3:	55                   	push   %ebp
414fb4:	8b ec                	mov    %esp,%ebp
414fb6:	83 ec 1c             	sub    $0x1c,%esp
414fb9:	53                   	push   %ebx
414fba:	56                   	push   %esi
414fbb:	57                   	push   %edi
414fbc:	33 c0                	xor    %eax,%eax
414fbe:	8d 7d e4             	lea    -0x1c(%ebp),%edi
414fc1:	ab                   	stos   %eax,%es:(%edi)
414fc2:	33 db                	xor    %ebx,%ebx
414fc4:	89 5d fc             	mov    %ebx,-0x4(%ebp)
414fc7:	89 5d f8             	mov    %ebx,-0x8(%ebp)
414fca:	89 5d f4             	mov    %ebx,-0xc(%ebp)
414fcd:	ab                   	stos   %eax,%es:(%edi)
414fce:	ab                   	stos   %eax,%es:(%edi)
414fcf:	ab                   	stos   %eax,%es:(%edi)
414fd0:	8d 45 e4             	lea    -0x1c(%ebp),%eax
414fd3:	50                   	push   %eax
414fd4:	ff 75 08             	push   0x8(%ebp)
414fd7:	e8 5e f7 ff ff       	call   0x41473a
414fdc:	8b f0                	mov    %eax,%esi
414fde:	85 f6                	test   %esi,%esi
414fe0:	0f 85 c3 00 00 00    	jne    0x4150a9
414fe6:	bf 57 00 07 80       	mov    $0x80070057,%edi
414feb:	8b 45 e4             	mov    -0x1c(%ebp),%eax
414fee:	3d 01 00 00 f0       	cmp    $0xf0000001,%eax
414ff3:	74 41                	je     0x415036
414ff5:	3d 02 00 00 f0       	cmp    $0xf0000002,%eax
414ffa:	0f 84 01 01 00 00    	je     0x415101
415000:	3d 03 00 00 f0       	cmp    $0xf0000003,%eax
415005:	0f 84 ae 00 00 00    	je     0x4150b9
41500b:	39 5d 0c             	cmp    %ebx,0xc(%ebp)
41500e:	74 15                	je     0x415025
415010:	8d 45 f4             	lea    -0xc(%ebp),%eax
415013:	50                   	push   %eax
415014:	ff 75 10             	push   0x10(%ebp)
415017:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41501a:	50                   	push   %eax
41501b:	ff 55 0c             	call   *0xc(%ebp)
41501e:	8b f0                	mov    %eax,%esi
415020:	8b 45 e4             	mov    -0x1c(%ebp),%eax
415023:	eb 02                	jmp    0x415027
415025:	8b f7                	mov    %edi,%esi
415027:	85 f6                	test   %esi,%esi
415029:	79 40                	jns    0x41506b
41502b:	50                   	push   %eax
41502c:	68 58 40 45 00       	push   $0x454058
415031:	e9 0c 01 00 00       	jmp    0x415142
415036:	8d 45 f8             	lea    -0x8(%ebp),%eax
415039:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41503c:	50                   	push   %eax
41503d:	8d 45 fc             	lea    -0x4(%ebp),%eax
415040:	50                   	push   %eax
415041:	ff 75 e8             	push   -0x18(%ebp)
415044:	ff 75 f0             	push   -0x10(%ebp)
415047:	e8 33 a6 02 00       	call   0x43f67f
41504c:	8b f0                	mov    %eax,%esi
41504e:	85 f6                	test   %esi,%esi
415050:	0f 88 f7 00 00 00    	js     0x41514d
415056:	ff 75 f8             	push   -0x8(%ebp)
415059:	e8 fa b5 02 00       	call   0x440658
41505e:	8b f0                	mov    %eax,%esi
415060:	85 f6                	test   %esi,%esi
415062:	0f 88 d2 00 00 00    	js     0x41513a
415068:	89 75 f4             	mov    %esi,-0xc(%ebp)
41506b:	6a 04                	push   $0x4
41506d:	8d 45 f4             	lea    -0xc(%ebp),%eax
415070:	50                   	push   %eax
415071:	68 02 00 00 f0       	push   $0xf0000002
415076:	ff 75 08             	push   0x8(%ebp)
415079:	e8 02 f8 ff ff       	call   0x414880
41507e:	8b f0                	mov    %eax,%esi
415080:	85 f6                	test   %esi,%esi
415082:	0f 88 ab 00 00 00    	js     0x415133
415088:	8d 45 e4             	lea    -0x1c(%ebp),%eax
41508b:	50                   	push   %eax
41508c:	e8 81 f6 ff ff       	call   0x414712
415091:	8d 45 e4             	lea    -0x1c(%ebp),%eax
415094:	50                   	push   %eax
415095:	ff 75 08             	push   0x8(%ebp)
415098:	e8 9d f6 ff ff       	call   0x41473a
41509d:	8b f0                	mov    %eax,%esi
41509f:	85 f6                	test   %esi,%esi
4150a1:	0f 84 44 ff ff ff    	je     0x414feb
4150a7:	85 f6                	test   %esi,%esi
4150a9:	0f 89 ad 00 00 00    	jns    0x41515c
4150af:	68 a0 40 45 00       	push   $0x4540a0
4150b4:	e9 99 00 00 00       	jmp    0x415152
4150b9:	8b 7d 14             	mov    0x14(%ebp),%edi
4150bc:	8d 45 fc             	lea    -0x4(%ebp),%eax
4150bf:	57                   	push   %edi
4150c0:	50                   	push   %eax
4150c1:	ff 75 e8             	push   -0x18(%ebp)
4150c4:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4150c7:	ff 75 f0             	push   -0x10(%ebp)
4150ca:	e8 65 a4 02 00       	call   0x43f534
4150cf:	8b f0                	mov    %eax,%esi
4150d1:	85 f6                	test   %esi,%esi
4150d3:	79 07                	jns    0x4150dc
4150d5:	68 e8 3f 45 00       	push   $0x453fe8
4150da:	eb 76                	jmp    0x415152
4150dc:	83 7d e8 08          	cmpl   $0x8,-0x18(%ebp)
4150e0:	75 33                	jne    0x415115
4150e2:	8d 47 04             	lea    0x4(%edi),%eax
4150e5:	50                   	push   %eax
4150e6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4150e9:	50                   	push   %eax
4150ea:	6a 08                	push   $0x8
4150ec:	ff 75 f0             	push   -0x10(%ebp)
4150ef:	e8 40 a4 02 00       	call   0x43f534
4150f4:	8b f0                	mov    %eax,%esi
4150f6:	85 f6                	test   %esi,%esi
4150f8:	79 1b                	jns    0x415115
4150fa:	68 20 40 45 00       	push   $0x454020
4150ff:	eb 51                	jmp    0x415152
415101:	8b 4d f0             	mov    -0x10(%ebp),%ecx
415104:	85 c9                	test   %ecx,%ecx
415106:	74 11                	je     0x415119
415108:	83 7d e8 04          	cmpl   $0x4,-0x18(%ebp)
41510c:	75 0b                	jne    0x415119
41510e:	8b 45 14             	mov    0x14(%ebp),%eax
415111:	8b 09                	mov    (%ecx),%ecx
415113:	89 08                	mov    %ecx,(%eax)
415115:	8b f3                	mov    %ebx,%esi
415117:	eb 4b                	jmp    0x415164
415119:	57                   	push   %edi
41511a:	68 8b 00 00 00       	push   $0x8b
41511f:	68 b0 3f 45 00       	push   $0x453fb0
415124:	8b f7                	mov    %edi,%esi
415126:	e8 a8 e6 fe ff       	call   0x4037d3
41512b:	68 bc 3f 45 00       	push   $0x453fbc
415130:	57                   	push   %edi
415131:	eb 20                	jmp    0x415153
415133:	68 78 40 45 00       	push   $0x454078
415138:	eb 18                	jmp    0x415152
41513a:	ff 75 f8             	push   -0x8(%ebp)
41513d:	68 8c 3f 45 00       	push   $0x453f8c
415142:	56                   	push   %esi
415143:	e8 e7 af 02 00       	call   0x44012f
415148:	83 c4 0c             	add    $0xc,%esp
41514b:	eb 17                	jmp    0x415164
41514d:	68 70 3f 45 00       	push   $0x453f70
415152:	56                   	push   %esi
415153:	e8 d7 af 02 00       	call   0x44012f
415158:	59                   	pop    %ecx
415159:	59                   	pop    %ecx
41515a:	eb 08                	jmp    0x415164
41515c:	33 c0                	xor    %eax,%eax
41515e:	83 fe 01             	cmp    $0x1,%esi
415161:	0f 44 f0             	cmove  %eax,%esi
415164:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
415167:	74 08                	je     0x415171
415169:	ff 75 f8             	push   -0x8(%ebp)
41516c:	e8 7e 03 03 00       	call   0x4454ef
415171:	8d 45 e4             	lea    -0x1c(%ebp),%eax
415174:	50                   	push   %eax
415175:	e8 98 f5 ff ff       	call   0x414712
41517a:	5f                   	pop    %edi
41517b:	8b c6                	mov    %esi,%eax
41517d:	5e                   	pop    %esi
41517e:	5b                   	pop    %ebx
41517f:	8b e5                	mov    %ebp,%esp
415181:	5d                   	pop    %ebp
415182:	c2 10 00             	ret    $0x10
415185:	55                   	push   %ebp
415186:	8b ec                	mov    %esp,%ebp
415188:	51                   	push   %ecx
415189:	51                   	push   %ecx
41518a:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
41518e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
415192:	56                   	push   %esi
415193:	ff 75 14             	push   0x14(%ebp)
415196:	ff 75 10             	push   0x10(%ebp)
415199:	ff 75 0c             	push   0xc(%ebp)
41519c:	ff 75 08             	push   0x8(%ebp)
41519f:	e8 dc f6 ff ff       	call   0x414880
4151a4:	8b f0                	mov    %eax,%esi
4151a6:	85 f6                	test   %esi,%esi
4151a8:	79 0f                	jns    0x4151b9
4151aa:	68 10 3f 45 00       	push   $0x453f10
4151af:	56                   	push   %esi
4151b0:	e8 7a af 02 00       	call   0x44012f
4151b5:	59                   	pop    %ecx
4151b6:	59                   	pop    %ecx
4151b7:	eb 27                	jmp    0x4151e0
4151b9:	8d 45 f8             	lea    -0x8(%ebp),%eax
4151bc:	50                   	push   %eax
4151bd:	ff 75 1c             	push   0x1c(%ebp)
4151c0:	ff 75 18             	push   0x18(%ebp)
4151c3:	ff 75 08             	push   0x8(%ebp)
4151c6:	e8 e8 fd ff ff       	call   0x414fb3
4151cb:	8b f0                	mov    %eax,%esi
4151cd:	85 f6                	test   %esi,%esi
4151cf:	79 07                	jns    0x4151d8
4151d1:	68 38 3f 45 00       	push   $0x453f38
4151d6:	eb d7                	jmp    0x4151af
4151d8:	8b 4d 20             	mov    0x20(%ebp),%ecx
4151db:	8b 45 f8             	mov    -0x8(%ebp),%eax
4151de:	89 01                	mov    %eax,(%ecx)
4151e0:	8b c6                	mov    %esi,%eax
4151e2:	5e                   	pop    %esi
4151e3:	8b e5                	mov    %ebp,%esp
4151e5:	5d                   	pop    %ebp
4151e6:	c2 1c 00             	ret    $0x1c
4151e9:	55                   	push   %ebp
4151ea:	8b ec                	mov    %esp,%ebp
4151ec:	51                   	push   %ecx
4151ed:	51                   	push   %ecx
4151ee:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4151f2:	8d 45 fc             	lea    -0x4(%ebp),%eax
4151f5:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4151f9:	56                   	push   %esi
4151fa:	ff 75 0c             	push   0xc(%ebp)
4151fd:	50                   	push   %eax
4151fe:	8d 45 f8             	lea    -0x8(%ebp),%eax
415201:	50                   	push   %eax
415202:	e8 ab a5 02 00       	call   0x43f7b2
415207:	8b f0                	mov    %eax,%esi
415209:	85 f6                	test   %esi,%esi
41520b:	79 12                	jns    0x41521f
41520d:	68 38 44 45 00       	push   $0x454438
415212:	56                   	push   %esi
415213:	e8 17 af 02 00       	call   0x44012f
415218:	59                   	pop    %ecx
415219:	59                   	pop    %ecx
41521a:	e9 bb 00 00 00       	jmp    0x4152da
41521f:	ff 75 10             	push   0x10(%ebp)
415222:	8d 45 fc             	lea    -0x4(%ebp),%eax
415225:	50                   	push   %eax
415226:	8d 45 f8             	lea    -0x8(%ebp),%eax
415229:	50                   	push   %eax
41522a:	e8 83 a5 02 00       	call   0x43f7b2
41522f:	8b f0                	mov    %eax,%esi
415231:	85 f6                	test   %esi,%esi
415233:	79 07                	jns    0x41523c
415235:	68 68 44 45 00       	push   $0x454468
41523a:	eb d6                	jmp    0x415212
41523c:	53                   	push   %ebx
41523d:	57                   	push   %edi
41523e:	8b 7d 08             	mov    0x8(%ebp),%edi
415241:	bb 03 00 00 f0       	mov    $0xf0000003,%ebx
415246:	83 7f 14 ff          	cmpl   $0xffffffff,0x14(%edi)
41524a:	74 1c                	je     0x415268
41524c:	ff 75 fc             	push   -0x4(%ebp)
41524f:	ff 75 f8             	push   -0x8(%ebp)
415252:	53                   	push   %ebx
415253:	ff 77 14             	push   0x14(%edi)
415256:	e8 25 f6 ff ff       	call   0x414880
41525b:	8b f0                	mov    %eax,%esi
41525d:	85 f6                	test   %esi,%esi
41525f:	79 07                	jns    0x415268
415261:	68 98 44 45 00       	push   $0x454498
415266:	eb 68                	jmp    0x4152d0
415268:	ff 75 fc             	push   -0x4(%ebp)
41526b:	ff 75 f8             	push   -0x8(%ebp)
41526e:	53                   	push   %ebx
41526f:	ff 77 10             	push   0x10(%edi)
415272:	e8 09 f6 ff ff       	call   0x414880
415277:	8b f0                	mov    %eax,%esi
415279:	85 f6                	test   %esi,%esi
41527b:	79 07                	jns    0x415284
41527d:	68 d8 44 45 00       	push   $0x4544d8
415282:	eb 4c                	jmp    0x4152d0
415284:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
415288:	74 4e                	je     0x4152d8
41528a:	68 20 bf 02 00       	push   $0x2bf20
41528f:	ff 77 0c             	push   0xc(%edi)
415292:	ff 15 10 b2 44 00    	call   *0x44b210