a96f20:	89 45 f8             	mov    %eax,-0x8(%ebp)
a96f23:	85 c0                	test   %eax,%eax
a96f25:	7e 1d                	jle    0xa96f44
a96f27:	8d 4e 18             	lea    0x18(%esi),%ecx
a96f2a:	51                   	push   %ecx
a96f2b:	ff 75 fc             	push   -0x4(%ebp)
a96f2e:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a96f34:	e8 ba 02 97 ff       	call   0x4071f3
a96f39:	03 5d f8             	add    -0x8(%ebp),%ebx
a96f3c:	47                   	inc    %edi
a96f3d:	3b 7e 38             	cmp    0x38(%esi),%edi
a96f40:	75 c2                	jne    0xa96f04
a96f42:	eb 1e                	jmp    0xa96f62
a96f44:	83 4e 18 ff          	orl    $0xffffffff,0x18(%esi)
a96f48:	eb 18                	jmp    0xa96f62
a96f4a:	ff 76 0c             	push   0xc(%esi)
a96f4d:	8d 46 18             	lea    0x18(%esi),%eax
a96f50:	50                   	push   %eax
a96f51:	ff 76 38             	push   0x38(%esi)
a96f54:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a96f5a:	ff 76 34             	push   0x34(%esi)
a96f5d:	e8 e4 70 99 ff       	call   0x42e046
a96f62:	5f                   	pop    %edi
a96f63:	5e                   	pop    %esi
a96f64:	b0 01                	mov    $0x1,%al
a96f66:	5b                   	pop    %ebx
a96f67:	8b e5                	mov    %ebp,%esp
a96f69:	5d                   	pop    %ebp
a96f6a:	c2 04 00             	ret    $0x4
a96f6d:	cc                   	int3
a96f6e:	cc                   	int3
a96f6f:	cc                   	int3
a96f70:	cc                   	int3
a96f71:	cc                   	int3
a96f72:	cc                   	int3
a96f73:	cc                   	int3
a96f74:	cc                   	int3
a96f75:	cc                   	int3
a96f76:	cc                   	int3
a96f77:	cc                   	int3
a96f78:	cc                   	int3
a96f79:	cc                   	int3
a96f7a:	cc                   	int3
a96f7b:	cc                   	int3
a96f7c:	cc                   	int3
a96f7d:	cc                   	int3
a96f7e:	cc                   	int3
a96f7f:	cc                   	int3
a96f80:	cc                   	int3
a96f81:	cc                   	int3
a96f82:	cc                   	int3
a96f83:	cc                   	int3
a96f84:	cc                   	int3
a96f85:	cc                   	int3
a96f86:	cc                   	int3
a96f87:	cc                   	int3
a96f88:	cc                   	int3
a96f89:	cc                   	int3
a96f8a:	cc                   	int3
a96f8b:	cc                   	int3
a96f8c:	cc                   	int3
a96f8d:	cc                   	int3
a96f8e:	cc                   	int3
a96f8f:	8b ff                	mov    %edi,%edi
a96f91:	55                   	push   %ebp
a96f92:	8b ec                	mov    %esp,%ebp
a96f94:	51                   	push   %ecx
a96f95:	51                   	push   %ecx
a96f96:	53                   	push   %ebx
a96f97:	56                   	push   %esi
a96f98:	8b f1                	mov    %ecx,%esi
a96f9a:	57                   	push   %edi
a96f9b:	80 7e 3c 00          	cmpb   $0x0,0x3c(%esi)
a96f9f:	75 56                	jne    0xa96ff7
a96fa1:	8b 46 38             	mov    0x38(%esi),%eax
a96fa4:	85 c0                	test   %eax,%eax
a96fa6:	7e 4f                	jle    0xa96ff7
a96fa8:	8b 5e 34             	mov    0x34(%esi),%ebx
a96fab:	33 ff                	xor    %edi,%edi
a96fad:	85 c0                	test   %eax,%eax
a96faf:	74 5e                	je     0xa9700f
a96fb1:	33 c0                	xor    %eax,%eax
a96fb3:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
a96fb7:	8b 46 08             	mov    0x8(%esi),%eax
a96fba:	50                   	push   %eax
a96fbb:	8b 00                	mov    (%eax),%eax
a96fbd:	ff 70 04             	push   0x4(%eax)
a96fc0:	8d 45 fc             	lea    -0x4(%ebp),%eax
a96fc3:	53                   	push   %ebx
a96fc4:	50                   	push   %eax
a96fc5:	e8 0f 58 97 ff       	call   0x40c7d9
a96fca:	83 c4 10             	add    $0x10,%esp
a96fcd:	89 45 f8             	mov    %eax,-0x8(%ebp)
a96fd0:	85 c0                	test   %eax,%eax
a96fd2:	7e 1d                	jle    0xa96ff1
a96fd4:	8d 4e 18             	lea    0x18(%esi),%ecx
a96fd7:	51                   	push   %ecx
a96fd8:	ff 75 fc             	push   -0x4(%ebp)
a96fdb:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a96fe1:	e8 0d 02 97 ff       	call   0x4071f3
a96fe6:	03 5d f8             	add    -0x8(%ebp),%ebx
a96fe9:	47                   	inc    %edi
a96fea:	3b 7e 38             	cmp    0x38(%esi),%edi
a96fed:	75 c2                	jne    0xa96fb1
a96fef:	eb 1e                	jmp    0xa9700f
a96ff1:	83 4e 18 ff          	orl    $0xffffffff,0x18(%esi)
a96ff5:	eb 18                	jmp    0xa9700f
a96ff7:	ff 76 0c             	push   0xc(%esi)
a96ffa:	8d 46 18             	lea    0x18(%esi),%eax
a96ffd:	50                   	push   %eax
a96ffe:	ff 76 38             	push   0x38(%esi)
a97001:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a97007:	ff 76 34             	push   0x34(%esi)
a9700a:	e8 37 70 99 ff       	call   0x42e046
a9700f:	5f                   	pop    %edi
a97010:	5e                   	pop    %esi
a97011:	b0 01                	mov    $0x1,%al
a97013:	5b                   	pop    %ebx
a97014:	8b e5                	mov    %ebp,%esp
a97016:	5d                   	pop    %ebp
a97017:	c2 04 00             	ret    $0x4
a9701a:	cc                   	int3
a9701b:	cc                   	int3
a9701c:	cc                   	int3
a9701d:	cc                   	int3
a9701e:	cc                   	int3
a9701f:	cc                   	int3
a97020:	cc                   	int3
a97021:	cc                   	int3
a97022:	cc                   	int3
a97023:	cc                   	int3
a97024:	cc                   	int3
a97025:	cc                   	int3
a97026:	cc                   	int3
a97027:	cc                   	int3
a97028:	cc                   	int3
a97029:	cc                   	int3
a9702a:	cc                   	int3
a9702b:	cc                   	int3
a9702c:	cc                   	int3
a9702d:	cc                   	int3
a9702e:	cc                   	int3
a9702f:	cc                   	int3
a97030:	cc                   	int3
a97031:	cc                   	int3
a97032:	cc                   	int3
a97033:	cc                   	int3
a97034:	cc                   	int3
a97035:	cc                   	int3
a97036:	cc                   	int3
a97037:	cc                   	int3
a97038:	cc                   	int3
a97039:	cc                   	int3
a9703a:	cc                   	int3
a9703b:	cc                   	int3
a9703c:	8b ff                	mov    %edi,%edi
a9703e:	55                   	push   %ebp
a9703f:	8b ec                	mov    %esp,%ebp
a97041:	51                   	push   %ecx
a97042:	51                   	push   %ecx
a97043:	53                   	push   %ebx
a97044:	56                   	push   %esi
a97045:	8b f1                	mov    %ecx,%esi
a97047:	57                   	push   %edi
a97048:	80 7e 3c 00          	cmpb   $0x0,0x3c(%esi)
a9704c:	75 56                	jne    0xa970a4
a9704e:	8b 46 38             	mov    0x38(%esi),%eax
a97051:	85 c0                	test   %eax,%eax
a97053:	7e 4f                	jle    0xa970a4
a97055:	8b 5e 34             	mov    0x34(%esi),%ebx
a97058:	33 ff                	xor    %edi,%edi
a9705a:	85 c0                	test   %eax,%eax
a9705c:	74 5e                	je     0xa970bc
a9705e:	33 c0                	xor    %eax,%eax
a97060:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
a97064:	8b 46 08             	mov    0x8(%esi),%eax
a97067:	50                   	push   %eax
a97068:	8b 00                	mov    (%eax),%eax
a9706a:	ff 70 04             	push   0x4(%eax)
a9706d:	8d 45 fc             	lea    -0x4(%ebp),%eax
a97070:	53                   	push   %ebx
a97071:	50                   	push   %eax
a97072:	e8 62 57 97 ff       	call   0x40c7d9
a97077:	83 c4 10             	add    $0x10,%esp
a9707a:	89 45 f8             	mov    %eax,-0x8(%ebp)
a9707d:	85 c0                	test   %eax,%eax
a9707f:	7e 1d                	jle    0xa9709e
a97081:	8d 4e 18             	lea    0x18(%esi),%ecx
a97084:	51                   	push   %ecx
a97085:	ff 75 fc             	push   -0x4(%ebp)
a97088:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a9708e:	e8 60 01 97 ff       	call   0x4071f3
a97093:	03 5d f8             	add    -0x8(%ebp),%ebx
a97096:	47                   	inc    %edi
a97097:	3b 7e 38             	cmp    0x38(%esi),%edi
a9709a:	75 c2                	jne    0xa9705e
a9709c:	eb 1e                	jmp    0xa970bc
a9709e:	83 4e 18 ff          	orl    $0xffffffff,0x18(%esi)
a970a2:	eb 18                	jmp    0xa970bc
a970a4:	ff 76 0c             	push   0xc(%esi)
a970a7:	8d 46 18             	lea    0x18(%esi),%eax
a970aa:	50                   	push   %eax
a970ab:	ff 76 38             	push   0x38(%esi)
a970ae:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a970b4:	ff 76 34             	push   0x34(%esi)
a970b7:	e8 8a 6f 99 ff       	call   0x42e046
a970bc:	5f                   	pop    %edi
a970bd:	5e                   	pop    %esi
a970be:	b0 01                	mov    $0x1,%al
a970c0:	5b                   	pop    %ebx
a970c1:	8b e5                	mov    %ebp,%esp
a970c3:	5d                   	pop    %ebp
a970c4:	c2 04 00             	ret    $0x4
a970c7:	cc                   	int3
a970c8:	cc                   	int3
a970c9:	cc                   	int3
a970ca:	cc                   	int3
a970cb:	cc                   	int3
a970cc:	cc                   	int3
a970cd:	cc                   	int3
a970ce:	cc                   	int3
a970cf:	cc                   	int3
a970d0:	cc                   	int3
a970d1:	cc                   	int3
a970d2:	cc                   	int3
a970d3:	cc                   	int3
a970d4:	cc                   	int3
a970d5:	cc                   	int3
a970d6:	cc                   	int3
a970d7:	cc                   	int3
a970d8:	cc                   	int3
a970d9:	cc                   	int3
a970da:	cc                   	int3
a970db:	cc                   	int3
a970dc:	cc                   	int3
a970dd:	cc                   	int3
a970de:	cc                   	int3
a970df:	cc                   	int3
a970e0:	cc                   	int3
a970e1:	cc                   	int3
a970e2:	cc                   	int3
a970e3:	cc                   	int3
a970e4:	cc                   	int3
a970e5:	cc                   	int3
a970e6:	cc                   	int3
a970e7:	cc                   	int3
a970e8:	cc                   	int3
a970e9:	8b ff                	mov    %edi,%edi
a970eb:	55                   	push   %ebp
a970ec:	8b ec                	mov    %esp,%ebp
a970ee:	51                   	push   %ecx
a970ef:	51                   	push   %ecx
a970f0:	53                   	push   %ebx
a970f1:	56                   	push   %esi
a970f2:	8b f1                	mov    %ecx,%esi
a970f4:	57                   	push   %edi
a970f5:	80 7e 3c 00          	cmpb   $0x0,0x3c(%esi)
a970f9:	75 56                	jne    0xa97151
a970fb:	8b 46 38             	mov    0x38(%esi),%eax
a970fe:	85 c0                	test   %eax,%eax
a97100:	7e 4f                	jle    0xa97151
a97102:	8b 5e 34             	mov    0x34(%esi),%ebx
a97105:	33 ff                	xor    %edi,%edi
a97107:	85 c0                	test   %eax,%eax
a97109:	74 5e                	je     0xa97169
a9710b:	33 c0                	xor    %eax,%eax
a9710d:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
a97111:	8b 46 08             	mov    0x8(%esi),%eax
a97114:	50                   	push   %eax
a97115:	8b 00                	mov    (%eax),%eax
a97117:	ff 70 04             	push   0x4(%eax)
a9711a:	8d 45 fc             	lea    -0x4(%ebp),%eax
a9711d:	53                   	push   %ebx
a9711e:	50                   	push   %eax
a9711f:	e8 b5 56 97 ff       	call   0x40c7d9
a97124:	83 c4 10             	add    $0x10,%esp
a97127:	89 45 f8             	mov    %eax,-0x8(%ebp)
a9712a:	85 c0                	test   %eax,%eax
a9712c:	7e 1d                	jle    0xa9714b
a9712e:	8d 4e 18             	lea    0x18(%esi),%ecx
a97131:	51                   	push   %ecx
a97132:	ff 75 fc             	push   -0x4(%ebp)
a97135:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a9713b:	e8 bb b9 99 ff       	call   0x432afb
a97140:	03 5d f8             	add    -0x8(%ebp),%ebx
a97143:	47                   	inc    %edi
a97144:	3b 7e 38             	cmp    0x38(%esi),%edi
a97147:	75 c2                	jne    0xa9710b
a97149:	eb 1e                	jmp    0xa97169
a9714b:	83 4e 18 ff          	orl    $0xffffffff,0x18(%esi)
a9714f:	eb 18                	jmp    0xa97169
a97151:	ff 76 0c             	push   0xc(%esi)
a97154:	8d 46 18             	lea    0x18(%esi),%eax
a97157:	50                   	push   %eax
a97158:	ff 76 38             	push   0x38(%esi)
a9715b:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
a97161:	ff 76 34             	push   0x34(%esi)
a97164:	e8 7b b3 98 ff       	call   0x4224e4
a97169:	5f                   	pop    %edi
a9716a:	5e                   	pop    %esi
a9716b:	b0 01                	mov    $0x1,%al
a9716d:	5b                   	pop    %ebx
a9716e:	8b e5                	mov    %ebp,%esp
a97170:	5d                   	pop    %ebp
a97171:	c2 04 00             	ret    $0x4
a97174:	cc                   	int3
a97175:	cc                   	int3
a97176:	cc                   	int3
a97177:	cc                   	int3
a97178:	cc                   	int3
a97179:	cc                   	int3
a9717a:	cc                   	int3
a9717b:	cc                   	int3
a9717c:	cc                   	int3
a9717d:	cc                   	int3
a9717e:	cc                   	int3
a9717f:	cc                   	int3
a97180:	cc                   	int3
a97181:	cc                   	int3
a97182:	cc                   	int3
a97183:	cc                   	int3
a97184:	cc                   	int3
a97185:	cc                   	int3
a97186:	cc                   	int3
a97187:	cc                   	int3
a97188:	cc                   	int3
a97189:	cc                   	int3
a9718a:	cc                   	int3
a9718b:	cc                   	int3
a9718c:	cc                   	int3
a9718d:	cc                   	int3
a9718e:	cc                   	int3
a9718f:	cc                   	int3
a97190:	cc                   	int3
a97191:	cc                   	int3
a97192:	cc                   	int3
a97193:	cc                   	int3
a97194:	cc                   	int3
a97195:	cc                   	int3
a97196:	8b ff                	mov    %edi,%edi
a97198:	55                   	push   %ebp
a97199:	8b ec                	mov    %esp,%ebp
a9719b:	51                   	push   %ecx
a9719c:	51                   	push   %ecx
a9719d:	53                   	push   %ebx
a9719e:	56                   	push   %esi
a9719f:	8b f1                	mov    %ecx,%esi
a971a1:	57                   	push   %edi
a971a2:	80 7e 3c 00          	cmpb   $0x0,0x3c(%esi)
a971a6:	75 56                	jne    0xa971fe