5f0f03:	c3                   	ret
5f0f04:	8b ff                	mov    %edi,%edi
5f0f06:	55                   	push   %ebp
5f0f07:	8b ec                	mov    %esp,%ebp
5f0f09:	51                   	push   %ecx
5f0f0a:	51                   	push   %ecx
5f0f0b:	53                   	push   %ebx
5f0f0c:	56                   	push   %esi
5f0f0d:	57                   	push   %edi
5f0f0e:	8b f1                	mov    %ecx,%esi
5f0f10:	33 d2                	xor    %edx,%edx
5f0f12:	6a 67                	push   $0x67
5f0f14:	5b                   	pop    %ebx
5f0f15:	6a 47                	push   $0x47
5f0f17:	83 4e 20 10          	orl    $0x10,0x20(%esi)
5f0f1b:	42                   	inc    %edx
5f0f1c:	8b 46 28             	mov    0x28(%esi),%eax
5f0f1f:	5f                   	pop    %edi
5f0f20:	85 c0                	test   %eax,%eax
5f0f22:	79 1a                	jns    0x5f0f3e
5f0f24:	0f b7 46 32          	movzwl 0x32(%esi),%eax
5f0f28:	83 f8 61             	cmp    $0x61,%eax
5f0f2b:	74 09                	je     0x5f0f36
5f0f2d:	83 f8 41             	cmp    $0x41,%eax
5f0f30:	74 04                	je     0x5f0f36
5f0f32:	6a 06                	push   $0x6
5f0f34:	eb 02                	jmp    0x5f0f38
5f0f36:	6a 0d                	push   $0xd
5f0f38:	58                   	pop    %eax
5f0f39:	89 46 28             	mov    %eax,0x28(%esi)
5f0f3c:	eb 17                	jmp    0x5f0f55
5f0f3e:	75 15                	jne    0x5f0f55
5f0f40:	0f b7 4e 32          	movzwl 0x32(%esi),%ecx
5f0f44:	66 3b cb             	cmp    %bx,%cx
5f0f47:	74 07                	je     0x5f0f50
5f0f49:	33 c0                	xor    %eax,%eax
5f0f4b:	66 3b cf             	cmp    %di,%cx
5f0f4e:	75 05                	jne    0x5f0f55
5f0f50:	89 56 28             	mov    %edx,0x28(%esi)
5f0f53:	8b c2                	mov    %edx,%eax
5f0f55:	05 5d 01 00 00       	add    $0x15d,%eax
5f0f5a:	8d 7e 40             	lea    0x40(%esi),%edi
5f0f5d:	50                   	push   %eax
5f0f5e:	8b cf                	mov    %edi,%ecx
5f0f60:	e8 86 e0 ff ff       	call   0x5eefeb
5f0f65:	84 c0                	test   %al,%al
5f0f67:	75 0f                	jne    0x5f0f78
5f0f69:	8b cf                	mov    %edi,%ecx
5f0f6b:	e8 4a e0 ff ff       	call   0x5eefba
5f0f70:	2d 5d 01 00 00       	sub    $0x15d,%eax
5f0f75:	89 46 28             	mov    %eax,0x28(%esi)
5f0f78:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
5f0f7e:	85 c0                	test   %eax,%eax
5f0f80:	75 02                	jne    0x5f0f84
5f0f82:	8b c7                	mov    %edi,%eax
5f0f84:	89 46 34             	mov    %eax,0x34(%esi)
5f0f87:	83 46 14 08          	addl   $0x8,0x14(%esi)
5f0f8b:	8b 4e 14             	mov    0x14(%esi),%ecx
5f0f8e:	8b 41 f8             	mov    -0x8(%ecx),%eax
5f0f91:	89 45 f8             	mov    %eax,-0x8(%ebp)
5f0f94:	8b 41 fc             	mov    -0x4(%ecx),%eax
5f0f97:	8b cf                	mov    %edi,%ecx
5f0f99:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f0f9c:	e8 19 e0 ff ff       	call   0x5eefba
5f0fa1:	8b 9f 04 04 00 00    	mov    0x404(%edi),%ebx
5f0fa7:	8b c8                	mov    %eax,%ecx
5f0fa9:	85 db                	test   %ebx,%ebx
5f0fab:	75 02                	jne    0x5f0faf
5f0fad:	8b df                	mov    %edi,%ebx
5f0faf:	ff 76 08             	push   0x8(%esi)
5f0fb2:	0f be 46 32          	movsbl 0x32(%esi),%eax
5f0fb6:	ff 76 04             	push   0x4(%esi)
5f0fb9:	ff 36                	push   (%esi)
5f0fbb:	ff 76 28             	push   0x28(%esi)
5f0fbe:	50                   	push   %eax
5f0fbf:	51                   	push   %ecx
5f0fc0:	8b cf                	mov    %edi,%ecx
5f0fc2:	e8 9e e1 ff ff       	call   0x5ef165
5f0fc7:	50                   	push   %eax
5f0fc8:	8b cf                	mov    %edi,%ecx
5f0fca:	e8 eb df ff ff       	call   0x5eefba
5f0fcf:	50                   	push   %eax
5f0fd0:	8d 45 f8             	lea    -0x8(%ebp),%eax
5f0fd3:	53                   	push   %ebx
5f0fd4:	50                   	push   %eax
5f0fd5:	e8 88 59 01 00       	call   0x606962
5f0fda:	8b 46 20             	mov    0x20(%esi),%eax
5f0fdd:	83 c4 28             	add    $0x28,%esp
5f0fe0:	c1 e8 05             	shr    $0x5,%eax
5f0fe3:	a8 01                	test   $0x1,%al
5f0fe5:	74 13                	je     0x5f0ffa
5f0fe7:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
5f0feb:	75 0d                	jne    0x5f0ffa
5f0fed:	ff 76 08             	push   0x8(%esi)
5f0ff0:	ff 76 34             	push   0x34(%esi)
5f0ff3:	e8 2f e8 ff ff       	call   0x5ef827
5f0ff8:	59                   	pop    %ecx
5f0ff9:	59                   	pop    %ecx
5f0ffa:	0f b7 46 32          	movzwl 0x32(%esi),%eax
5f0ffe:	6a 67                	push   $0x67
5f1000:	59                   	pop    %ecx
5f1001:	66 3b c1             	cmp    %cx,%ax
5f1004:	74 08                	je     0x5f100e
5f1006:	6a 47                	push   $0x47
5f1008:	59                   	pop    %ecx
5f1009:	66 3b c1             	cmp    %cx,%ax
5f100c:	75 17                	jne    0x5f1025
5f100e:	8b 46 20             	mov    0x20(%esi),%eax
5f1011:	c1 e8 05             	shr    $0x5,%eax
5f1014:	a8 01                	test   $0x1,%al
5f1016:	75 0d                	jne    0x5f1025
5f1018:	ff 76 08             	push   0x8(%esi)
5f101b:	ff 76 34             	push   0x34(%esi)
5f101e:	e8 e5 e6 ff ff       	call   0x5ef708
5f1023:	59                   	pop    %ecx
5f1024:	59                   	pop    %ecx
5f1025:	8b 56 34             	mov    0x34(%esi),%edx
5f1028:	8a 02                	mov    (%edx),%al
5f102a:	3c 2d                	cmp    $0x2d,%al
5f102c:	75 0a                	jne    0x5f1038
5f102e:	83 4e 20 40          	orl    $0x40,0x20(%esi)
5f1032:	42                   	inc    %edx
5f1033:	89 56 34             	mov    %edx,0x34(%esi)
5f1036:	8a 02                	mov    (%edx),%al
5f1038:	3c 69                	cmp    $0x69,%al
5f103a:	74 0c                	je     0x5f1048
5f103c:	3c 49                	cmp    $0x49,%al
5f103e:	74 08                	je     0x5f1048
5f1040:	3c 6e                	cmp    $0x6e,%al
5f1042:	74 04                	je     0x5f1048
5f1044:	3c 4e                	cmp    $0x4e,%al
5f1046:	75 0b                	jne    0x5f1053
5f1048:	83 66 20 f7          	andl   $0xfffffff7,0x20(%esi)
5f104c:	6a 73                	push   $0x73
5f104e:	58                   	pop    %eax
5f104f:	66 89 46 32          	mov    %ax,0x32(%esi)
5f1053:	8d 7a 01             	lea    0x1(%edx),%edi
5f1056:	8a 0a                	mov    (%edx),%cl
5f1058:	42                   	inc    %edx
5f1059:	84 c9                	test   %cl,%cl
5f105b:	75 f9                	jne    0x5f1056
5f105d:	2b d7                	sub    %edi,%edx
5f105f:	b0 01                	mov    $0x1,%al
5f1061:	5f                   	pop    %edi
5f1062:	89 56 38             	mov    %edx,0x38(%esi)
5f1065:	5e                   	pop    %esi
5f1066:	5b                   	pop    %ebx
5f1067:	c9                   	leave
5f1068:	c3                   	ret
5f1069:	8b ff                	mov    %edi,%edi
5f106b:	56                   	push   %esi
5f106c:	8b f1                	mov    %ecx,%esi
5f106e:	57                   	push   %edi
5f106f:	ff 76 2c             	push   0x2c(%esi)
5f1072:	0f b6 46 31          	movzbl 0x31(%esi),%eax
5f1076:	8d 7e 40             	lea    0x40(%esi),%edi
5f1079:	50                   	push   %eax
5f107a:	ff 76 04             	push   0x4(%esi)
5f107d:	ff 36                	push   (%esi)
5f107f:	e8 62 e0 ff ff       	call   0x5ef0e6
5f1084:	83 c4 10             	add    $0x10,%esp
5f1087:	84 c0                	test   %al,%al
5f1089:	74 39                	je     0x5f10c4
5f108b:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f108f:	8b 46 14             	mov    0x14(%esi),%eax
5f1092:	53                   	push   %ebx
5f1093:	8b 9f 04 04 00 00    	mov    0x404(%edi),%ebx
5f1099:	0f b7 40 fc          	movzwl -0x4(%eax),%eax
5f109d:	85 db                	test   %ebx,%ebx
5f109f:	75 02                	jne    0x5f10a3
5f10a1:	8b df                	mov    %edi,%ebx
5f10a3:	50                   	push   %eax
5f10a4:	8b cf                	mov    %edi,%ecx
5f10a6:	e8 0f df ff ff       	call   0x5eefba
5f10ab:	50                   	push   %eax
5f10ac:	8d 46 38             	lea    0x38(%esi),%eax
5f10af:	53                   	push   %ebx
5f10b0:	50                   	push   %eax
5f10b1:	e8 44 50 01 00       	call   0x6060fa
5f10b6:	83 c4 10             	add    $0x10,%esp
5f10b9:	5b                   	pop    %ebx
5f10ba:	85 c0                	test   %eax,%eax
5f10bc:	74 25                	je     0x5f10e3
5f10be:	c6 46 30 01          	movb   $0x1,0x30(%esi)
5f10c2:	eb 1f                	jmp    0x5f10e3
5f10c4:	8b 8f 04 04 00 00    	mov    0x404(%edi),%ecx
5f10ca:	85 c9                	test   %ecx,%ecx
5f10cc:	75 02                	jne    0x5f10d0
5f10ce:	8b cf                	mov    %edi,%ecx
5f10d0:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f10d4:	8b 46 14             	mov    0x14(%esi),%eax
5f10d7:	8a 40 fc             	mov    -0x4(%eax),%al
5f10da:	88 01                	mov    %al,(%ecx)
5f10dc:	c7 46 38 01 00 00 00 	movl   $0x1,0x38(%esi)
5f10e3:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
5f10e9:	85 c0                	test   %eax,%eax
5f10eb:	74 02                	je     0x5f10ef
5f10ed:	8b f8                	mov    %eax,%edi
5f10ef:	89 7e 34             	mov    %edi,0x34(%esi)
5f10f2:	b0 01                	mov    $0x1,%al
5f10f4:	5f                   	pop    %edi
5f10f5:	5e                   	pop    %esi
5f10f6:	c2 04 00             	ret    $0x4
5f10f9:	8b ff                	mov    %edi,%edi
5f10fb:	55                   	push   %ebp
5f10fc:	8b ec                	mov    %esp,%ebp
5f10fe:	51                   	push   %ecx
5f10ff:	53                   	push   %ebx
5f1100:	56                   	push   %esi
5f1101:	8b f1                	mov    %ecx,%esi
5f1103:	57                   	push   %edi
5f1104:	c6 46 3c 01          	movb   $0x1,0x3c(%esi)
5f1108:	8d 7e 40             	lea    0x40(%esi),%edi
5f110b:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f110f:	8b 46 14             	mov    0x14(%esi),%eax
5f1112:	ff 76 2c             	push   0x2c(%esi)
5f1115:	0f b7 58 fc          	movzwl -0x4(%eax),%ebx
5f1119:	0f b7 46 32          	movzwl 0x32(%esi),%eax
5f111d:	50                   	push   %eax
5f111e:	ff 76 04             	push   0x4(%esi)
5f1121:	ff 36                	push   (%esi)
5f1123:	e8 ef df ff ff       	call   0x5ef117
5f1128:	83 c4 10             	add    $0x10,%esp
5f112b:	84 c0                	test   %al,%al
5f112d:	75 32                	jne    0x5f1161
5f112f:	8b 8f 04 04 00 00    	mov    0x404(%edi),%ecx
5f1135:	88 5d fc             	mov    %bl,-0x4(%ebp)
5f1138:	88 45 fd             	mov    %al,-0x3(%ebp)
5f113b:	85 c9                	test   %ecx,%ecx
5f113d:	75 02                	jne    0x5f1141
5f113f:	8b cf                	mov    %edi,%ecx
5f1141:	8b 46 08             	mov    0x8(%esi),%eax
5f1144:	50                   	push   %eax
5f1145:	8b 00                	mov    (%eax),%eax
5f1147:	ff 70 04             	push   0x4(%eax)
5f114a:	8d 45 fc             	lea    -0x4(%ebp),%eax
5f114d:	50                   	push   %eax
5f114e:	51                   	push   %ecx
5f114f:	e8 ef 4c 01 00       	call   0x605e43
5f1154:	83 c4 10             	add    $0x10,%esp
5f1157:	85 c0                	test   %eax,%eax
5f1159:	79 15                	jns    0x5f1170
5f115b:	c6 46 30 01          	movb   $0x1,0x30(%esi)
5f115f:	eb 0f                	jmp    0x5f1170
5f1161:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
5f1167:	85 c0                	test   %eax,%eax
5f1169:	75 02                	jne    0x5f116d
5f116b:	8b c7                	mov    %edi,%eax
5f116d:	66 89 18             	mov    %bx,(%eax)
5f1170:	8b 87 04 04 00 00    	mov    0x404(%edi),%eax
5f1176:	85 c0                	test   %eax,%eax
5f1178:	74 02                	je     0x5f117c
5f117a:	8b f8                	mov    %eax,%edi
5f117c:	89 7e 34             	mov    %edi,0x34(%esi)
5f117f:	b0 01                	mov    $0x1,%al
5f1181:	5f                   	pop    %edi
5f1182:	c7 46 38 01 00 00 00 	movl   $0x1,0x38(%esi)
5f1189:	5e                   	pop    %esi
5f118a:	5b                   	pop    %ebx
5f118b:	c9                   	leave
5f118c:	c2 04 00             	ret    $0x4
5f118f:	8b ff                	mov    %edi,%edi
5f1191:	55                   	push   %ebp
5f1192:	8b ec                	mov    %esp,%ebp
5f1194:	51                   	push   %ecx
5f1195:	53                   	push   %ebx
5f1196:	56                   	push   %esi
5f1197:	8b f1                	mov    %ecx,%esi
5f1199:	57                   	push   %edi
5f119a:	ff 76 2c             	push   0x2c(%esi)
5f119d:	e8 0b fb ff ff       	call   0x5f0cad
5f11a2:	59                   	pop    %ecx
5f11a3:	8b c8                	mov    %eax,%ecx
5f11a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
5f11a8:	83 e9 01             	sub    $0x1,%ecx
5f11ab:	74 78                	je     0x5f1225
5f11ad:	83 e9 01             	sub    $0x1,%ecx
5f11b0:	74 56                	je     0x5f1208
5f11b2:	49                   	dec    %ecx
5f11b3:	83 e9 01             	sub    $0x1,%ecx
5f11b6:	74 33                	je     0x5f11eb
5f11b8:	83 e9 04             	sub    $0x4,%ecx
5f11bb:	74 17                	je     0x5f11d4
5f11bd:	e8 37 be ff ff       	call   0x5ecff9
5f11c2:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5f11c8:	e8 52 bd ff ff       	call   0x5ecf1f
5f11cd:	32 c0                	xor    %al,%al
5f11cf:	e9 05 01 00 00       	jmp    0x5f12d9
5f11d4:	8b 46 20             	mov    0x20(%esi),%eax
5f11d7:	83 46 14 08          	addl   $0x8,0x14(%esi)
5f11db:	c1 e8 04             	shr    $0x4,%eax
5f11de:	a8 01                	test   $0x1,%al
5f11e0:	8b 46 14             	mov    0x14(%esi),%eax
5f11e3:	8b 78 f8             	mov    -0x8(%eax),%edi
5f11e6:	8b 58 fc             	mov    -0x4(%eax),%ebx
5f11e9:	eb 5a                	jmp    0x5f1245
5f11eb:	8b 46 20             	mov    0x20(%esi),%eax
5f11ee:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f11f2:	c1 e8 04             	shr    $0x4,%eax
5f11f5:	a8 01                	test   $0x1,%al
5f11f7:	8b 46 14             	mov    0x14(%esi),%eax
5f11fa:	74 05                	je     0x5f1201
5f11fc:	8b 40 fc             	mov    -0x4(%eax),%eax
5f11ff:	eb 3f                	jmp    0x5f1240
5f1201:	8b 78 fc             	mov    -0x4(%eax),%edi
5f1204:	33 db                	xor    %ebx,%ebx
5f1206:	eb 3d                	jmp    0x5f1245
5f1208:	8b 46 20             	mov    0x20(%esi),%eax
5f120b:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f120f:	c1 e8 04             	shr    $0x4,%eax
5f1212:	a8 01                	test   $0x1,%al
5f1214:	8b 46 14             	mov    0x14(%esi),%eax
5f1217:	74 06                	je     0x5f121f
5f1219:	0f bf 40 fc          	movswl -0x4(%eax),%eax
5f121d:	eb 21                	jmp    0x5f1240
5f121f:	0f b7 40 fc          	movzwl -0x4(%eax),%eax
5f1223:	eb 1b                	jmp    0x5f1240
5f1225:	8b 46 20             	mov    0x20(%esi),%eax
5f1228:	83 46 14 04          	addl   $0x4,0x14(%esi)
5f122c:	c1 e8 04             	shr    $0x4,%eax
5f122f:	a8 01                	test   $0x1,%al
5f1231:	8b 46 14             	mov    0x14(%esi),%eax
5f1234:	74 06                	je     0x5f123c
5f1236:	0f be 40 fc          	movsbl -0x4(%eax),%eax
5f123a:	eb 04                	jmp    0x5f1240
5f123c:	0f b6 40 fc          	movzbl -0x4(%eax),%eax
5f1240:	99                   	cltd
5f1241:	8b f8                	mov    %eax,%edi
5f1243:	8b da                	mov    %edx,%ebx
5f1245:	8b 4e 20             	mov    0x20(%esi),%ecx
5f1248:	8b c1                	mov    %ecx,%eax
5f124a:	c1 e8 04             	shr    $0x4,%eax
5f124d:	a8 01                	test   $0x1,%al
5f124f:	74 17                	je     0x5f1268
5f1251:	85 db                	test   %ebx,%ebx
5f1253:	7f 13                	jg     0x5f1268
5f1255:	7c 04                	jl     0x5f125b
5f1257:	85 ff                	test   %edi,%edi
5f1259:	73 0d                	jae    0x5f1268
5f125b:	f7 df                	neg    %edi
5f125d:	83 d3 00             	adc    $0x0,%ebx
5f1260:	f7 db                	neg    %ebx
5f1262:	83 c9 40             	or     $0x40,%ecx
5f1265:	89 4e 20             	mov    %ecx,0x20(%esi)
5f1268:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
5f126c:	7d 09                	jge    0x5f1277
5f126e:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
5f1275:	eb 11                	jmp    0x5f1288
5f1277:	ff 76 28             	push   0x28(%esi)
5f127a:	83 e1 f7             	and    $0xfffffff7,%ecx