42fe8b:	33 c0                	xor    %eax,%eax
42fe8d:	5a                   	pop    %edx
42fe8e:	59                   	pop    %ecx
42fe8f:	59                   	pop    %ecx
42fe90:	64 89 10             	mov    %edx,%fs:(%eax)
42fe93:	68 b5 ff 42 00       	push   $0x42ffb5
42fe98:	8b 45 08             	mov    0x8(%ebp),%eax
42fe9b:	8b 40 b4             	mov    -0x4c(%eax),%eax
42fe9e:	e8 51 3a fd ff       	call   0x4038f4
42fea3:	c3                   	ret
42fea4:	e9 df 41 fd ff       	jmp    0x404088
42fea9:	eb ed                	jmp    0x42fe98
42feab:	8b 45 08             	mov    0x8(%ebp),%eax
42feae:	8b 55 08             	mov    0x8(%ebp),%edx
42feb1:	8d 70 f0             	lea    -0x10(%eax),%esi
42feb4:	8d 7a a4             	lea    -0x5c(%edx),%edi
42feb7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42feb8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42feb9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42feba:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42febb:	8b 45 08             	mov    0x8(%ebp),%eax
42febe:	8b 40 c8             	mov    -0x38(%eax),%eax
42fec1:	8b 40 4c             	mov    0x4c(%eax),%eax
42fec4:	8b 10                	mov    (%eax),%edx
42fec6:	ff 52 2c             	call   *0x2c(%edx)
42fec9:	8b 55 08             	mov    0x8(%ebp),%edx
42fecc:	8b 52 f8             	mov    -0x8(%edx),%edx
42fecf:	8b 4d 08             	mov    0x8(%ebp),%ecx
42fed2:	2b 51 f0             	sub    -0x10(%ecx),%edx
42fed5:	3b c2                	cmp    %edx,%eax
42fed7:	7d 4a                	jge    0x42ff23
42fed9:	8b 45 08             	mov    0x8(%ebp),%eax
42fedc:	8b 40 c8             	mov    -0x38(%eax),%eax
42fedf:	8b 40 4c             	mov    0x4c(%eax),%eax
42fee2:	8b 10                	mov    (%eax),%edx
42fee4:	ff 52 2c             	call   *0x2c(%edx)
42fee7:	8b 55 08             	mov    0x8(%ebp),%edx
42feea:	8b 52 f8             	mov    -0x8(%edx),%edx
42feed:	8b 4d 08             	mov    0x8(%ebp),%ecx
42fef0:	2b 51 f0             	sub    -0x10(%ecx),%edx
42fef3:	2b d0                	sub    %eax,%edx
42fef5:	d1 fa                	sar    $1,%edx
42fef7:	79 03                	jns    0x42fefc
42fef9:	83 d2 00             	adc    $0x0,%edx
42fefc:	8b 45 08             	mov    0x8(%ebp),%eax
42feff:	03 50 f0             	add    -0x10(%eax),%edx
42ff02:	42                   	inc    %edx
42ff03:	8b 45 08             	mov    0x8(%ebp),%eax
42ff06:	89 50 f0             	mov    %edx,-0x10(%eax)
42ff09:	8b 45 08             	mov    0x8(%ebp),%eax
42ff0c:	8b 40 c8             	mov    -0x38(%eax),%eax
42ff0f:	8b 40 4c             	mov    0x4c(%eax),%eax
42ff12:	8b 10                	mov    (%eax),%edx
42ff14:	ff 52 2c             	call   *0x2c(%edx)
42ff17:	8b 55 08             	mov    0x8(%ebp),%edx
42ff1a:	03 42 f0             	add    -0x10(%edx),%eax
42ff1d:	8b 55 08             	mov    0x8(%ebp),%edx
42ff20:	89 42 f8             	mov    %eax,-0x8(%edx)
42ff23:	8b 45 08             	mov    0x8(%ebp),%eax
42ff26:	8b 40 c8             	mov    -0x38(%eax),%eax
42ff29:	8b 40 4c             	mov    0x4c(%eax),%eax
42ff2c:	8b 10                	mov    (%eax),%edx
42ff2e:	ff 52 20             	call   *0x20(%edx)
42ff31:	8b 55 08             	mov    0x8(%ebp),%edx
42ff34:	8b 52 fc             	mov    -0x4(%edx),%edx
42ff37:	8b 4d 08             	mov    0x8(%ebp),%ecx
42ff3a:	2b 51 f4             	sub    -0xc(%ecx),%edx
42ff3d:	3b c2                	cmp    %edx,%eax
42ff3f:	7d 4a                	jge    0x42ff8b
42ff41:	8b 45 08             	mov    0x8(%ebp),%eax
42ff44:	8b 40 c8             	mov    -0x38(%eax),%eax
42ff47:	8b 40 4c             	mov    0x4c(%eax),%eax
42ff4a:	8b 10                	mov    (%eax),%edx
42ff4c:	ff 52 20             	call   *0x20(%edx)
42ff4f:	8b 55 08             	mov    0x8(%ebp),%edx
42ff52:	8b 52 fc             	mov    -0x4(%edx),%edx
42ff55:	8b 4d 08             	mov    0x8(%ebp),%ecx
42ff58:	2b 51 f4             	sub    -0xc(%ecx),%edx
42ff5b:	2b d0                	sub    %eax,%edx
42ff5d:	d1 fa                	sar    $1,%edx
42ff5f:	79 03                	jns    0x42ff64
42ff61:	83 d2 00             	adc    $0x0,%edx
42ff64:	8b 45 08             	mov    0x8(%ebp),%eax
42ff67:	03 50 f4             	add    -0xc(%eax),%edx
42ff6a:	42                   	inc    %edx
42ff6b:	8b 45 08             	mov    0x8(%ebp),%eax
42ff6e:	89 50 f4             	mov    %edx,-0xc(%eax)
42ff71:	8b 45 08             	mov    0x8(%ebp),%eax
42ff74:	8b 40 c8             	mov    -0x38(%eax),%eax
42ff77:	8b 40 4c             	mov    0x4c(%eax),%eax
42ff7a:	8b 10                	mov    (%eax),%edx
42ff7c:	ff 52 20             	call   *0x20(%edx)
42ff7f:	8b 55 08             	mov    0x8(%ebp),%edx
42ff82:	03 42 f4             	add    -0xc(%edx),%eax
42ff85:	8b 55 08             	mov    0x8(%ebp),%edx
42ff88:	89 42 fc             	mov    %eax,-0x4(%edx)
42ff8b:	8b 45 08             	mov    0x8(%ebp),%eax
42ff8e:	8b 40 c8             	mov    -0x38(%eax),%eax
42ff91:	8b 48 4c             	mov    0x4c(%eax),%ecx
42ff94:	8b 45 08             	mov    0x8(%ebp),%eax
42ff97:	8d 50 f0             	lea    -0x10(%eax),%edx
42ff9a:	8b 45 08             	mov    0x8(%ebp),%eax
42ff9d:	8b 40 d8             	mov    -0x28(%eax),%eax
42ffa0:	e8 df 3c ff ff       	call   0x423c84
42ffa5:	8b 45 08             	mov    0x8(%ebp),%eax
42ffa8:	8b 55 08             	mov    0x8(%ebp),%edx
42ffab:	8d 70 a4             	lea    -0x5c(%eax),%esi
42ffae:	8d 7a f0             	lea    -0x10(%edx),%edi
42ffb1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42ffb2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42ffb3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42ffb4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
42ffb5:	8b 45 08             	mov    0x8(%ebp),%eax
42ffb8:	8b 40 c8             	mov    -0x38(%eax),%eax
42ffbb:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
42ffbf:	74 6b                	je     0x43002c
42ffc1:	8b 45 08             	mov    0x8(%ebp),%eax
42ffc4:	ff 48 f8             	decl   -0x8(%eax)
42ffc7:	8b 45 08             	mov    0x8(%ebp),%eax
42ffca:	ff 48 fc             	decl   -0x4(%eax)
42ffcd:	eb 5d                	jmp    0x43002c
42ffcf:	8b 45 08             	mov    0x8(%ebp),%eax
42ffd2:	83 78 c0 00          	cmpl   $0x0,-0x40(%eax)
42ffd6:	74 35                	je     0x43000d
42ffd8:	8b 45 08             	mov    0x8(%ebp),%eax
42ffdb:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
42ffdf:	75 2c                	jne    0x43000d
42ffe1:	8b 45 08             	mov    0x8(%ebp),%eax
42ffe4:	8b 40 f0             	mov    -0x10(%eax),%eax
42ffe7:	8b 55 08             	mov    0x8(%ebp),%edx
42ffea:	8b 52 c0             	mov    -0x40(%edx),%edx
42ffed:	03 42 34             	add    0x34(%edx),%eax
42fff0:	8b 55 08             	mov    0x8(%ebp),%edx
42fff3:	89 42 f8             	mov    %eax,-0x8(%edx)
42fff6:	8b 45 08             	mov    0x8(%ebp),%eax
42fff9:	8b 40 f4             	mov    -0xc(%eax),%eax
42fffc:	8b 55 08             	mov    0x8(%ebp),%edx
42ffff:	8b 52 c0             	mov    -0x40(%edx),%edx
430002:	03 42 30             	add    0x30(%edx),%eax
430005:	8b 55 08             	mov    0x8(%ebp),%edx
430008:	89 42 fc             	mov    %eax,-0x4(%edx)
43000b:	eb 18                	jmp    0x430025
43000d:	8b 45 08             	mov    0x8(%ebp),%eax
430010:	8b 40 f0             	mov    -0x10(%eax),%eax
430013:	8b 55 08             	mov    0x8(%ebp),%edx
430016:	89 42 f8             	mov    %eax,-0x8(%edx)
430019:	8b 45 08             	mov    0x8(%ebp),%eax
43001c:	8b 40 f4             	mov    -0xc(%eax),%eax
43001f:	8b 55 08             	mov    0x8(%ebp),%edx
430022:	89 42 fc             	mov    %eax,-0x4(%edx)
430025:	8b 45 08             	mov    0x8(%ebp),%eax
430028:	c6 40 c7 00          	movb   $0x0,-0x39(%eax)
43002c:	8b 45 08             	mov    0x8(%ebp),%eax
43002f:	ff 48 f0             	decl   -0x10(%eax)
430032:	8b 45 08             	mov    0x8(%ebp),%eax
430035:	ff 48 f4             	decl   -0xc(%eax)
430038:	8b 45 08             	mov    0x8(%ebp),%eax
43003b:	83 40 f8 02          	addl   $0x2,-0x8(%eax)
43003f:	8b 45 08             	mov    0x8(%ebp),%eax
430042:	83 40 fc 02          	addl   $0x2,-0x4(%eax)
430046:	8b 45 08             	mov    0x8(%ebp),%eax
430049:	8b 40 c8             	mov    -0x38(%eax),%eax
43004c:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
430050:	75 12                	jne    0x430064
430052:	8b 45 08             	mov    0x8(%ebp),%eax
430055:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
430059:	74 3e                	je     0x430099
43005b:	8b 45 08             	mov    0x8(%ebp),%eax
43005e:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
430062:	74 35                	je     0x430099
430064:	8b 45 08             	mov    0x8(%ebp),%eax
430067:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
43006b:	75 2c                	jne    0x430099
43006d:	6a 0f                	push   $0xf
43006f:	8b 45 08             	mov    0x8(%ebp),%eax
430072:	8b 40 c8             	mov    -0x38(%eax),%eax
430075:	0f b6 40 38          	movzbl 0x38(%eax),%eax
430079:	8b 04 85 30 14 46 00 	mov    0x461430(,%eax,4),%eax
430080:	50                   	push   %eax
430081:	8b 45 08             	mov    0x8(%ebp),%eax
430084:	83 c0 f0             	add    $0xfffffff0,%eax
430087:	50                   	push   %eax
430088:	8b 45 08             	mov    0x8(%ebp),%eax
43008b:	8b 40 d8             	mov    -0x28(%eax),%eax
43008e:	e8 19 3e ff ff       	call   0x423eac
430093:	50                   	push   %eax
430094:	e8 57 6d fd ff       	call   0x406df0
430099:	8b 45 08             	mov    0x8(%ebp),%eax
43009c:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
4300a0:	74 4c                	je     0x4300ee
4300a2:	8b 45 08             	mov    0x8(%ebp),%eax
4300a5:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
4300a9:	74 0d                	je     0x4300b8
4300ab:	8b 45 08             	mov    0x8(%ebp),%eax
4300ae:	8b 40 f8             	mov    -0x8(%eax),%eax
4300b1:	40                   	inc    %eax
4300b2:	8b 55 08             	mov    0x8(%ebp),%edx
4300b5:	89 42 e0             	mov    %eax,-0x20(%edx)
4300b8:	8b 45 08             	mov    0x8(%ebp),%eax
4300bb:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
4300bf:	74 09                	je     0x4300ca
4300c1:	8b 45 08             	mov    0x8(%ebp),%eax
4300c4:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
4300c8:	75 13                	jne    0x4300dd
4300ca:	8b 45 08             	mov    0x8(%ebp),%eax
4300cd:	8b 40 d8             	mov    -0x28(%eax),%eax
4300d0:	8b 40 14             	mov    0x14(%eax),%eax
4300d3:	ba 0d 00 00 ff       	mov    $0xff00000d,%edx
4300d8:	e8 3b 37 ff ff       	call   0x423818
4300dd:	8b 45 08             	mov    0x8(%ebp),%eax
4300e0:	8d 50 e0             	lea    -0x20(%eax),%edx
4300e3:	8b 45 08             	mov    0x8(%ebp),%eax
4300e6:	8b 40 d8             	mov    -0x28(%eax),%eax
4300e9:	e8 ce 3a ff ff       	call   0x423bbc
4300ee:	8b 45 08             	mov    0x8(%ebp),%eax
4300f1:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
4300f5:	0f 84 80 00 00 00    	je     0x43017b
4300fb:	8b 45 08             	mov    0x8(%ebp),%eax
4300fe:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
430102:	74 77                	je     0x43017b
430104:	8b 45 08             	mov    0x8(%ebp),%eax
430107:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
43010b:	74 09                	je     0x430116
43010d:	8b 45 08             	mov    0x8(%ebp),%eax
430110:	80 78 de 00          	cmpb   $0x0,-0x22(%eax)
430114:	75 65                	jne    0x43017b
430116:	8b 45 08             	mov    0x8(%ebp),%eax
430119:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
43011d:	74 1e                	je     0x43013d
43011f:	6a 0f                	push   $0xf
430121:	6a 02                	push   $0x2
430123:	8b 45 08             	mov    0x8(%ebp),%eax
430126:	83 c0 e0             	add    $0xffffffe0,%eax
430129:	50                   	push   %eax
43012a:	8b 45 08             	mov    0x8(%ebp),%eax
43012d:	8b 40 d8             	mov    -0x28(%eax),%eax
430130:	e8 77 3d ff ff       	call   0x423eac
430135:	50                   	push   %eax
430136:	e8 b5 6c fd ff       	call   0x406df0
43013b:	eb 25                	jmp    0x430162
43013d:	8b 45 08             	mov    0x8(%ebp),%eax
430140:	f6 40 0c 40          	testb  $0x40,0xc(%eax)
430144:	74 1c                	je     0x430162
430146:	6a 0f                	push   $0xf
430148:	6a 04                	push   $0x4
43014a:	8b 45 08             	mov    0x8(%ebp),%eax
43014d:	83 c0 e0             	add    $0xffffffe0,%eax
430150:	50                   	push   %eax
430151:	8b 45 08             	mov    0x8(%ebp),%eax
430154:	8b 40 d8             	mov    -0x28(%eax),%eax
430157:	e8 50 3d ff ff       	call   0x423eac
43015c:	50                   	push   %eax
43015d:	e8 8e 6c fd ff       	call   0x406df0
430162:	8b 45 08             	mov    0x8(%ebp),%eax
430165:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
430169:	75 10                	jne    0x43017b
43016b:	6a ff                	push   $0xffffffff
43016d:	6a 00                	push   $0x0
43016f:	8b 45 08             	mov    0x8(%ebp),%eax
430172:	83 c0 e0             	add    $0xffffffe0,%eax
430175:	50                   	push   %eax
430176:	e8 55 6f fd ff       	call   0x4070d0
43017b:	8b 45 08             	mov    0x8(%ebp),%eax
43017e:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
430182:	74 09                	je     0x43018d
430184:	8b 45 08             	mov    0x8(%ebp),%eax
430187:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
43018b:	75 0d                	jne    0x43019a
43018d:	8b 45 08             	mov    0x8(%ebp),%eax
430190:	8b 40 f8             	mov    -0x8(%eax),%eax
430193:	40                   	inc    %eax
430194:	8b 55 08             	mov    0x8(%ebp),%edx
430197:	89 42 e0             	mov    %eax,-0x20(%edx)
43019a:	8b 45 08             	mov    0x8(%ebp),%eax
43019d:	83 40 e0 02          	addl   $0x2,-0x20(%eax)
4301a1:	8b 45 08             	mov    0x8(%ebp),%eax
4301a4:	ff 48 e8             	decl   -0x18(%eax)
4301a7:	8b 45 08             	mov    0x8(%ebp),%eax
4301aa:	0f b6 40 cf          	movzbl -0x31(%eax),%eax
4301ae:	0f b7 04 45 28 14 46 	movzwl 0x461428(,%eax,2),%eax
4301b5:	00
4301b6:	66 83 c8 60          	or     $0x60,%ax
4301ba:	0f b7 c0             	movzwl %ax,%eax
4301bd:	8b 55 08             	mov    0x8(%ebp),%edx
4301c0:	89 42 9c             	mov    %eax,-0x64(%edx)
4301c3:	8b 45 08             	mov    0x8(%ebp),%eax
4301c6:	80 78 9b 00          	cmpb   $0x0,-0x65(%eax)
4301ca:	74 13                	je     0x4301df
4301cc:	8b 45 08             	mov    0x8(%ebp),%eax
4301cf:	f6 40 0d 01          	testb  $0x1,0xd(%eax)
4301d3:	74 0a                	je     0x4301df
4301d5:	8b 45 08             	mov    0x8(%ebp),%eax
4301d8:	81 48 9c 00 00 10 00 	orl    $0x100000,-0x64(%eax)
4301df:	8b 45 08             	mov    0x8(%ebp),%eax
4301e2:	8b 55 08             	mov    0x8(%ebp),%edx
4301e5:	8d 70 e0             	lea    -0x20(%eax),%esi
4301e8:	8d 7a a4             	lea    -0x5c(%edx),%edi
4301eb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4301ec:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4301ed:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4301ee:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4301ef:	8b 45 08             	mov    0x8(%ebp),%eax
4301f2:	f6 40 0c 20          	testb  $0x20,0xc(%eax)
4301f6:	74 15                	je     0x43020d
4301f8:	8b 45 08             	mov    0x8(%ebp),%eax
4301fb:	8b 40 d8             	mov    -0x28(%eax),%eax
4301fe:	8b 40 0c             	mov    0xc(%eax),%eax
430201:	0f b6 15 70 03 43 00 	movzbl 0x430370,%edx
430208:	e8 db 30 ff ff       	call   0x4232e8
43020d:	8b 45 08             	mov    0x8(%ebp),%eax
430210:	83 c0 e0             	add    $0xffffffe0,%eax
430213:	50                   	push   %eax
430214:	8b 45 08             	mov    0x8(%ebp),%eax
430217:	0f b6 40 d7          	movzbl -0x29(%eax),%eax
43021b:	50                   	push   %eax
43021c:	8b 45 08             	mov    0x8(%ebp),%eax
43021f:	8b 40 9c             	mov    -0x64(%eax),%eax
430222:	0d 00 04 00 00       	or     $0x400,%eax
430227:	0d 00 01 00 00       	or     $0x100,%eax
43022c:	50                   	push   %eax
43022d:	8b 45 08             	mov    0x8(%ebp),%eax
430230:	8b 40 c8             	mov    -0x38(%eax),%eax
430233:	8b 48 30             	mov    0x30(%eax),%ecx
430236:	8b 45 08             	mov    0x8(%ebp),%eax
430239:	8b 50 d8             	mov    -0x28(%eax),%edx
43023c:	8b 45 08             	mov    0x8(%ebp),%eax
43023f:	8b 40 c8             	mov    -0x38(%eax),%eax
430242:	e8 75 f5 ff ff       	call   0x42f7bc
430247:	8b 45 08             	mov    0x8(%ebp),%eax
43024a:	8b 40 b0             	mov    -0x50(%eax),%eax
43024d:	8b 55 08             	mov    0x8(%ebp),%edx
430250:	2b 42 a8             	sub    -0x58(%edx),%eax
430253:	8b 55 08             	mov    0x8(%ebp),%edx
430256:	8b 52 ec             	mov    -0x14(%edx),%edx
430259:	8b 4d 08             	mov    0x8(%ebp),%ecx
43025c:	2b 51 e4             	sub    -0x1c(%ecx),%edx
43025f:	2b c2                	sub    %edx,%eax
430261:	d1 f8                	sar    $1,%eax
430263:	79 03                	jns    0x430268
430265:	83 d0 00             	adc    $0x0,%eax
430268:	50                   	push   %eax
430269:	6a 00                	push   $0x0
43026b:	8b 45 08             	mov    0x8(%ebp),%eax
43026e:	83 c0 e0             	add    $0xffffffe0,%eax
430271:	50                   	push   %eax
430272:	e8 59 6e fd ff       	call   0x4070d0
430277:	8b 45 08             	mov    0x8(%ebp),%eax
43027a:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
43027e:	74 2b                	je     0x4302ab
430280:	8b 45 08             	mov    0x8(%ebp),%eax