a86e62:	e8 cb d0 9a ff       	call   0x433f32
a86e67:	8b 5d 08             	mov    0x8(%ebp),%ebx
a86e6a:	48                   	dec    %eax
a86e6b:	03 f8                	add    %eax,%edi
a86e6d:	89 7e 34             	mov    %edi,0x34(%esi)
a86e70:	8b 4e 28             	mov    0x28(%esi),%ecx
a86e73:	85 c9                	test   %ecx,%ecx
a86e75:	7f 04                	jg     0xa86e7b
a86e77:	85 db                	test   %ebx,%ebx
a86e79:	74 30                	je     0xa86eab
a86e7b:	33 d2                	xor    %edx,%edx
a86e7d:	8b c3                	mov    %ebx,%eax
a86e7f:	f7 75 0c             	divl   0xc(%ebp)
a86e82:	49                   	dec    %ecx
a86e83:	80 c2 30             	add    $0x30,%dl
a86e86:	89 4e 28             	mov    %ecx,0x28(%esi)
a86e89:	8b d8                	mov    %eax,%ebx
a86e8b:	80 fa 39             	cmp    $0x39,%dl
a86e8e:	7e 11                	jle    0xa86ea1
a86e90:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
a86e94:	0f 94 c0             	sete   %al
a86e97:	fe c8                	dec    %al
a86e99:	24 e0                	and    $0xe0,%al
a86e9b:	04 61                	add    $0x61,%al
a86e9d:	2c 3a                	sub    $0x3a,%al
a86e9f:	02 d0                	add    %al,%dl
a86ea1:	8b 46 34             	mov    0x34(%esi),%eax
a86ea4:	88 10                	mov    %dl,(%eax)
a86ea6:	ff 4e 34             	decl   0x34(%esi)
a86ea9:	eb c5                	jmp    0xa86e70
a86eab:	8b 46 34             	mov    0x34(%esi),%eax
a86eae:	2b f8                	sub    %eax,%edi
a86eb0:	89 7e 38             	mov    %edi,0x38(%esi)
a86eb3:	40                   	inc    %eax
a86eb4:	5f                   	pop    %edi
a86eb5:	89 46 34             	mov    %eax,0x34(%esi)
a86eb8:	5e                   	pop    %esi
a86eb9:	5b                   	pop    %ebx
a86eba:	5d                   	pop    %ebp
a86ebb:	c2 0c 00             	ret    $0xc
a86ebe:	cc                   	int3
a86ebf:	cc                   	int3
a86ec0:	cc                   	int3
a86ec1:	cc                   	int3
a86ec2:	cc                   	int3
a86ec3:	cc                   	int3
a86ec4:	cc                   	int3
a86ec5:	cc                   	int3
a86ec6:	cc                   	int3
a86ec7:	cc                   	int3
a86ec8:	cc                   	int3
a86ec9:	cc                   	int3
a86eca:	cc                   	int3
a86ecb:	cc                   	int3
a86ecc:	cc                   	int3
a86ecd:	cc                   	int3
a86ece:	cc                   	int3
a86ecf:	cc                   	int3
a86ed0:	cc                   	int3
a86ed1:	cc                   	int3
a86ed2:	cc                   	int3
a86ed3:	cc                   	int3
a86ed4:	cc                   	int3
a86ed5:	cc                   	int3
a86ed6:	cc                   	int3
a86ed7:	cc                   	int3
a86ed8:	cc                   	int3
a86ed9:	cc                   	int3
a86eda:	cc                   	int3
a86edb:	8b ff                	mov    %edi,%edi
a86edd:	55                   	push   %ebp
a86ede:	8b ec                	mov    %esp,%ebp
a86ee0:	53                   	push   %ebx
a86ee1:	56                   	push   %esi
a86ee2:	8b f1                	mov    %ecx,%esi
a86ee4:	57                   	push   %edi
a86ee5:	8d 4e 40             	lea    0x40(%esi),%ecx
a86ee8:	8b b9 04 04 00 00    	mov    0x404(%ecx),%edi
a86eee:	85 ff                	test   %edi,%edi
a86ef0:	75 02                	jne    0xa86ef4
a86ef2:	8b f9                	mov    %ecx,%edi
a86ef4:	e8 39 d0 9a ff       	call   0x433f32
a86ef9:	8b 5d 08             	mov    0x8(%ebp),%ebx
a86efc:	48                   	dec    %eax
a86efd:	03 f8                	add    %eax,%edi
a86eff:	89 7e 34             	mov    %edi,0x34(%esi)
a86f02:	8b 4e 28             	mov    0x28(%esi),%ecx
a86f05:	85 c9                	test   %ecx,%ecx
a86f07:	7f 04                	jg     0xa86f0d
a86f09:	85 db                	test   %ebx,%ebx
a86f0b:	74 30                	je     0xa86f3d
a86f0d:	33 d2                	xor    %edx,%edx
a86f0f:	8b c3                	mov    %ebx,%eax
a86f11:	f7 75 0c             	divl   0xc(%ebp)
a86f14:	49                   	dec    %ecx
a86f15:	80 c2 30             	add    $0x30,%dl
a86f18:	89 4e 28             	mov    %ecx,0x28(%esi)
a86f1b:	8b d8                	mov    %eax,%ebx
a86f1d:	80 fa 39             	cmp    $0x39,%dl
a86f20:	7e 11                	jle    0xa86f33
a86f22:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
a86f26:	0f 94 c0             	sete   %al
a86f29:	fe c8                	dec    %al
a86f2b:	24 e0                	and    $0xe0,%al
a86f2d:	04 61                	add    $0x61,%al
a86f2f:	2c 3a                	sub    $0x3a,%al
a86f31:	02 d0                	add    %al,%dl
a86f33:	8b 46 34             	mov    0x34(%esi),%eax
a86f36:	88 10                	mov    %dl,(%eax)
a86f38:	ff 4e 34             	decl   0x34(%esi)
a86f3b:	eb c5                	jmp    0xa86f02
a86f3d:	8b 46 34             	mov    0x34(%esi),%eax
a86f40:	2b f8                	sub    %eax,%edi
a86f42:	89 7e 38             	mov    %edi,0x38(%esi)
a86f45:	40                   	inc    %eax
a86f46:	5f                   	pop    %edi
a86f47:	89 46 34             	mov    %eax,0x34(%esi)
a86f4a:	5e                   	pop    %esi
a86f4b:	5b                   	pop    %ebx
a86f4c:	5d                   	pop    %ebp
a86f4d:	c2 0c 00             	ret    $0xc
a86f50:	cc                   	int3
a86f51:	cc                   	int3
a86f52:	cc                   	int3
a86f53:	cc                   	int3
a86f54:	cc                   	int3
a86f55:	cc                   	int3
a86f56:	cc                   	int3
a86f57:	cc                   	int3
a86f58:	cc                   	int3
a86f59:	cc                   	int3
a86f5a:	cc                   	int3
a86f5b:	cc                   	int3
a86f5c:	cc                   	int3
a86f5d:	cc                   	int3
a86f5e:	cc                   	int3
a86f5f:	cc                   	int3
a86f60:	cc                   	int3
a86f61:	cc                   	int3
a86f62:	cc                   	int3
a86f63:	cc                   	int3
a86f64:	cc                   	int3
a86f65:	cc                   	int3
a86f66:	cc                   	int3
a86f67:	cc                   	int3
a86f68:	cc                   	int3
a86f69:	cc                   	int3
a86f6a:	cc                   	int3
a86f6b:	cc                   	int3
a86f6c:	cc                   	int3
a86f6d:	8b ff                	mov    %edi,%edi
a86f6f:	55                   	push   %ebp
a86f70:	8b ec                	mov    %esp,%ebp
a86f72:	53                   	push   %ebx
a86f73:	56                   	push   %esi
a86f74:	8b f1                	mov    %ecx,%esi
a86f76:	57                   	push   %edi
a86f77:	8d 4e 40             	lea    0x40(%esi),%ecx
a86f7a:	8b b9 04 04 00 00    	mov    0x404(%ecx),%edi
a86f80:	85 ff                	test   %edi,%edi
a86f82:	75 02                	jne    0xa86f86
a86f84:	8b f9                	mov    %ecx,%edi
a86f86:	e8 a7 cf 9a ff       	call   0x433f32
a86f8b:	8b 5d 08             	mov    0x8(%ebp),%ebx
a86f8e:	48                   	dec    %eax
a86f8f:	03 f8                	add    %eax,%edi
a86f91:	89 7e 34             	mov    %edi,0x34(%esi)
a86f94:	8b 4e 28             	mov    0x28(%esi),%ecx
a86f97:	85 c9                	test   %ecx,%ecx
a86f99:	7f 04                	jg     0xa86f9f
a86f9b:	85 db                	test   %ebx,%ebx
a86f9d:	74 30                	je     0xa86fcf
a86f9f:	33 d2                	xor    %edx,%edx
a86fa1:	8b c3                	mov    %ebx,%eax
a86fa3:	f7 75 0c             	divl   0xc(%ebp)
a86fa6:	49                   	dec    %ecx
a86fa7:	80 c2 30             	add    $0x30,%dl
a86faa:	89 4e 28             	mov    %ecx,0x28(%esi)
a86fad:	8b d8                	mov    %eax,%ebx
a86faf:	80 fa 39             	cmp    $0x39,%dl
a86fb2:	7e 11                	jle    0xa86fc5
a86fb4:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
a86fb8:	0f 94 c0             	sete   %al
a86fbb:	fe c8                	dec    %al
a86fbd:	24 e0                	and    $0xe0,%al
a86fbf:	04 61                	add    $0x61,%al
a86fc1:	2c 3a                	sub    $0x3a,%al
a86fc3:	02 d0                	add    %al,%dl
a86fc5:	8b 46 34             	mov    0x34(%esi),%eax
a86fc8:	88 10                	mov    %dl,(%eax)
a86fca:	ff 4e 34             	decl   0x34(%esi)
a86fcd:	eb c5                	jmp    0xa86f94
a86fcf:	8b 46 34             	mov    0x34(%esi),%eax
a86fd2:	2b f8                	sub    %eax,%edi
a86fd4:	89 7e 38             	mov    %edi,0x38(%esi)
a86fd7:	40                   	inc    %eax
a86fd8:	5f                   	pop    %edi
a86fd9:	89 46 34             	mov    %eax,0x34(%esi)
a86fdc:	5e                   	pop    %esi
a86fdd:	5b                   	pop    %ebx
a86fde:	5d                   	pop    %ebp
a86fdf:	c2 0c 00             	ret    $0xc
a86fe2:	cc                   	int3
a86fe3:	cc                   	int3
a86fe4:	cc                   	int3
a86fe5:	cc                   	int3
a86fe6:	cc                   	int3
a86fe7:	cc                   	int3
a86fe8:	cc                   	int3
a86fe9:	cc                   	int3
a86fea:	cc                   	int3
a86feb:	cc                   	int3
a86fec:	cc                   	int3
a86fed:	cc                   	int3
a86fee:	cc                   	int3
a86fef:	cc                   	int3
a86ff0:	cc                   	int3
a86ff1:	cc                   	int3
a86ff2:	cc                   	int3
a86ff3:	cc                   	int3
a86ff4:	cc                   	int3
a86ff5:	cc                   	int3
a86ff6:	cc                   	int3
a86ff7:	cc                   	int3
a86ff8:	cc                   	int3
a86ff9:	cc                   	int3
a86ffa:	cc                   	int3
a86ffb:	cc                   	int3
a86ffc:	cc                   	int3
a86ffd:	cc                   	int3
a86ffe:	cc                   	int3
a86fff:	8b ff                	mov    %edi,%edi
a87001:	55                   	push   %ebp
a87002:	8b ec                	mov    %esp,%ebp
a87004:	53                   	push   %ebx
a87005:	56                   	push   %esi
a87006:	8b f1                	mov    %ecx,%esi
a87008:	57                   	push   %edi
a87009:	8d 4e 40             	lea    0x40(%esi),%ecx
a8700c:	8b b9 04 04 00 00    	mov    0x404(%ecx),%edi
a87012:	85 ff                	test   %edi,%edi
a87014:	75 02                	jne    0xa87018
a87016:	8b f9                	mov    %ecx,%edi
a87018:	e8 15 cf 9a ff       	call   0x433f32
a8701d:	8b 5d 08             	mov    0x8(%ebp),%ebx
a87020:	48                   	dec    %eax
a87021:	03 f8                	add    %eax,%edi
a87023:	89 7e 34             	mov    %edi,0x34(%esi)
a87026:	8b 4e 28             	mov    0x28(%esi),%ecx
a87029:	85 c9                	test   %ecx,%ecx
a8702b:	7f 04                	jg     0xa87031
a8702d:	85 db                	test   %ebx,%ebx
a8702f:	74 30                	je     0xa87061
a87031:	33 d2                	xor    %edx,%edx
a87033:	8b c3                	mov    %ebx,%eax
a87035:	f7 75 0c             	divl   0xc(%ebp)
a87038:	49                   	dec    %ecx
a87039:	80 c2 30             	add    $0x30,%dl
a8703c:	89 4e 28             	mov    %ecx,0x28(%esi)
a8703f:	8b d8                	mov    %eax,%ebx
a87041:	80 fa 39             	cmp    $0x39,%dl
a87044:	7e 11                	jle    0xa87057
a87046:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
a8704a:	0f 94 c0             	sete   %al
a8704d:	fe c8                	dec    %al
a8704f:	24 e0                	and    $0xe0,%al
a87051:	04 61                	add    $0x61,%al
a87053:	2c 3a                	sub    $0x3a,%al
a87055:	02 d0                	add    %al,%dl
a87057:	8b 46 34             	mov    0x34(%esi),%eax
a8705a:	88 10                	mov    %dl,(%eax)
a8705c:	ff 4e 34             	decl   0x34(%esi)
a8705f:	eb c5                	jmp    0xa87026
a87061:	8b 46 34             	mov    0x34(%esi),%eax
a87064:	2b f8                	sub    %eax,%edi
a87066:	89 7e 38             	mov    %edi,0x38(%esi)
a87069:	40                   	inc    %eax
a8706a:	5f                   	pop    %edi
a8706b:	89 46 34             	mov    %eax,0x34(%esi)
a8706e:	5e                   	pop    %esi
a8706f:	5b                   	pop    %ebx
a87070:	5d                   	pop    %ebp
a87071:	c2 0c 00             	ret    $0xc
a87074:	cc                   	int3
a87075:	cc                   	int3
a87076:	cc                   	int3
a87077:	cc                   	int3
a87078:	cc                   	int3
a87079:	cc                   	int3
a8707a:	cc                   	int3
a8707b:	cc                   	int3
a8707c:	cc                   	int3
a8707d:	cc                   	int3
a8707e:	cc                   	int3
a8707f:	cc                   	int3
a87080:	cc                   	int3
a87081:	cc                   	int3
a87082:	cc                   	int3
a87083:	cc                   	int3
a87084:	cc                   	int3
a87085:	cc                   	int3
a87086:	cc                   	int3
a87087:	cc                   	int3
a87088:	cc                   	int3
a87089:	cc                   	int3
a8708a:	cc                   	int3
a8708b:	cc                   	int3
a8708c:	cc                   	int3
a8708d:	cc                   	int3
a8708e:	cc                   	int3
a8708f:	cc                   	int3
a87090:	cc                   	int3
a87091:	8b ff                	mov    %edi,%edi
a87093:	55                   	push   %ebp
a87094:	8b ec                	mov    %esp,%ebp
a87096:	53                   	push   %ebx
a87097:	56                   	push   %esi
a87098:	8b f1                	mov    %ecx,%esi
a8709a:	57                   	push   %edi
a8709b:	8d 4e 40             	lea    0x40(%esi),%ecx
a8709e:	8b b9 04 04 00 00    	mov    0x404(%ecx),%edi
a870a4:	85 ff                	test   %edi,%edi
a870a6:	75 02                	jne    0xa870aa
a870a8:	8b f9                	mov    %ecx,%edi
a870aa:	e8 83 ce 9a ff       	call   0x433f32
a870af:	8b 5d 08             	mov    0x8(%ebp),%ebx
a870b2:	48                   	dec    %eax
a870b3:	03 f8                	add    %eax,%edi
a870b5:	89 7e 34             	mov    %edi,0x34(%esi)
a870b8:	8b 4e 28             	mov    0x28(%esi),%ecx
a870bb:	85 c9                	test   %ecx,%ecx
a870bd:	7f 04                	jg     0xa870c3
a870bf:	85 db                	test   %ebx,%ebx
a870c1:	74 30                	je     0xa870f3
a870c3:	33 d2                	xor    %edx,%edx
a870c5:	8b c3                	mov    %ebx,%eax
a870c7:	f7 75 0c             	divl   0xc(%ebp)
a870ca:	49                   	dec    %ecx
a870cb:	80 c2 30             	add    $0x30,%dl
a870ce:	89 4e 28             	mov    %ecx,0x28(%esi)
a870d1:	8b d8                	mov    %eax,%ebx
a870d3:	80 fa 39             	cmp    $0x39,%dl
a870d6:	7e 11                	jle    0xa870e9
a870d8:	80 7d 10 00          	cmpb   $0x0,0x10(%ebp)
a870dc:	0f 94 c0             	sete   %al
a870df:	fe c8                	dec    %al
a870e1:	24 e0                	and    $0xe0,%al
a870e3:	04 61                	add    $0x61,%al
a870e5:	2c 3a                	sub    $0x3a,%al
a870e7:	02 d0                	add    %al,%dl