41fdd9:	8b 06                	mov    (%esi),%eax
41fddb:	eb 02                	jmp    0x41fddf
41fddd:	8b c6                	mov    %esi,%eax
41fddf:	ff 75 0c             	push   0xc(%ebp)
41fde2:	2b f8                	sub    %eax,%edi
41fde4:	d1 ff                	sar    $1,%edi
41fde6:	57                   	push   %edi
41fde7:	56                   	push   %esi
41fde8:	e8 92 fb 00 00       	call   0x42f97f
41fded:	e9 f1 b3 fe ff       	jmp    0x40b1e3
41fdf2:	85 f6                	test   %esi,%esi
41fdf4:	0f 85 3b b4 fe ff    	jne    0x40b235
41fdfa:	21 71 10             	and    %esi,0x10(%ecx)
41fdfd:	83 79 14 08          	cmpl   $0x8,0x14(%ecx)
41fe01:	72 02                	jb     0x41fe05
41fe03:	8b 09                	mov    (%ecx),%ecx
41fe05:	33 c0                	xor    %eax,%eax
41fe07:	66 89 01             	mov    %ax,(%ecx)
41fe0a:	e9 24 b4 fe ff       	jmp    0x40b233
41fe0f:	bb fe ff ff 7f       	mov    $0x7ffffffe,%ebx
41fe14:	8b c3                	mov    %ebx,%eax
41fe16:	2b c1                	sub    %ecx,%eax
41fe18:	3b f0                	cmp    %eax,%esi
41fe1a:	0f 87 62 b4 fe ff    	ja     0x40b282
41fe20:	8d 1c 31             	lea    (%ecx,%esi,1),%ebx
41fe23:	e9 5a b4 fe ff       	jmp    0x40b282
41fe28:	8b 4d 08             	mov    0x8(%ebp),%ecx
41fe2b:	33 c0                	xor    %eax,%eax
41fe2d:	89 4d e8             	mov    %ecx,-0x18(%ebp)
41fe30:	89 65 f0             	mov    %esp,-0x10(%ebp)
41fe33:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
41fe37:	83 c1 01             	add    $0x1,%ecx
41fe3a:	74 28                	je     0x41fe64
41fe3c:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
41fe42:	0f 87 a2 b4 fe ff    	ja     0x40b2ea
41fe48:	8b 35 3c 1a 40 00    	mov    0x401a3c,%esi
41fe4e:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
41fe51:	50                   	push   %eax
41fe52:	8b ce                	mov    %esi,%ecx
41fe54:	ff 15 20 a5 43 00    	call   *0x43a520
41fe5a:	ff d6                	call   *%esi
41fe5c:	85 c0                	test   %eax,%eax
41fe5e:	0f 84 86 b4 fe ff    	je     0x40b2ea
41fe64:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41fe67:	b8 82 fe 41 00       	mov    $0x41fe82,%eax
41fe6c:	c3                   	ret
41fe6d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41fe70:	6a 00                	push   $0x0
41fe72:	6a 01                	push   $0x1
41fe74:	e8 a6 b6 fe ff       	call   0x40b51f
41fe79:	6a 00                	push   $0x0
41fe7b:	6a 00                	push   $0x0
41fe7d:	e8 54 af ff ff       	call   0x41add6
41fe82:	8b 7d ec             	mov    -0x14(%ebp),%edi
41fe85:	8b 5d e8             	mov    -0x18(%ebp),%ebx
41fe88:	8b 75 e4             	mov    -0x1c(%ebp),%esi
41fe8b:	e9 1f b4 fe ff       	jmp    0x40b2af
41fe90:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
41fe94:	72 04                	jb     0x41fe9a
41fe96:	8b 17                	mov    (%edi),%edx
41fe98:	eb 02                	jmp    0x41fe9c
41fe9a:	8b d7                	mov    %edi,%edx
41fe9c:	50                   	push   %eax
41fe9d:	8b ce                	mov    %esi,%ecx
41fe9f:	e8 4d b3 fe ff       	call   0x40b1f1
41fea4:	59                   	pop    %ecx
41fea5:	e9 10 b4 fe ff       	jmp    0x40b2ba
41feaa:	8b 01                	mov    (%ecx),%eax
41feac:	51                   	push   %ecx
41fead:	8b 70 04             	mov    0x4(%eax),%esi
41feb0:	8b ce                	mov    %esi,%ecx
41feb2:	ff 15 20 a5 43 00    	call   *0x43a520
41feb8:	ff d6                	call   *%esi
41feba:	e9 67 b4 fe ff       	jmp    0x40b326
41febf:	8b ce                	mov    %esi,%ecx
41fec1:	ff 15 20 a5 43 00    	call   *0x43a520
41fec7:	ff d6                	call   *%esi
41fec9:	5e                   	pop    %esi
41feca:	c3                   	ret
41fecb:	53                   	push   %ebx
41fecc:	8b d6                	mov    %esi,%edx
41fece:	e8 1e b3 fe ff       	call   0x40b1f1
41fed3:	59                   	pop    %ecx
41fed4:	e9 6d b6 fe ff       	jmp    0x40b546
41fed9:	51                   	push   %ecx
41feda:	57                   	push   %edi
41fedb:	51                   	push   %ecx
41fedc:	8d 4e 04             	lea    0x4(%esi),%ecx
41fedf:	e8 ee f5 00 00       	call   0x42f4d2
41fee4:	8b d8                	mov    %eax,%ebx
41fee6:	85 db                	test   %ebx,%ebx
41fee8:	0f 88 6e b9 fe ff    	js     0x40b85c
41feee:	e9 50 b9 fe ff       	jmp    0x40b843
41fef3:	8b ce                	mov    %esi,%ecx
41fef5:	ff 15 20 a5 43 00    	call   *0x43a520
41fefb:	ff d6                	call   *%esi
41fefd:	e9 5a b9 fe ff       	jmp    0x40b85c
41ff02:	89 37                	mov    %esi,(%edi)
41ff04:	8b 06                	mov    (%esi),%eax
41ff06:	56                   	push   %esi
41ff07:	8b 70 04             	mov    0x4(%eax),%esi
41ff0a:	8b ce                	mov    %esi,%ecx
41ff0c:	ff 15 20 a5 43 00    	call   *0x43a520
41ff12:	ff d6                	call   *%esi
41ff14:	33 c0                	xor    %eax,%eax
41ff16:	e9 43 b9 fe ff       	jmp    0x40b85e
41ff1b:	8d 9d 38 ff ff ff    	lea    -0xc8(%ebp),%ebx
41ff21:	e9 ec b9 fe ff       	jmp    0x40b912
41ff26:	8d 85 b4 fb ff ff    	lea    -0x44c(%ebp),%eax
41ff2c:	50                   	push   %eax
41ff2d:	8d 8d 74 fd ff ff    	lea    -0x28c(%ebp),%ecx
41ff33:	e8 a0 bb fe ff       	call   0x40bad8
41ff38:	8b c8                	mov    %eax,%ecx
41ff3a:	8b 41 08             	mov    0x8(%ecx),%eax
41ff3d:	ff 71 04             	push   0x4(%ecx)
41ff40:	8b 09                	mov    (%ecx),%ecx
41ff42:	56                   	push   %esi
41ff43:	8b 40 04             	mov    0x4(%eax),%eax
41ff46:	8d 04 48             	lea    (%eax,%ecx,2),%eax
41ff49:	50                   	push   %eax
41ff4a:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
41ff50:	8b 70 10             	mov    0x10(%eax),%esi
41ff53:	8b ce                	mov    %esi,%ecx
41ff55:	ff 15 20 a5 43 00    	call   *0x43a520
41ff5b:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
41ff61:	ff d6                	call   *%esi
41ff63:	e9 4d ba fe ff       	jmp    0x40b9b5
41ff68:	8b ce                	mov    %esi,%ecx
41ff6a:	ff 15 20 a5 43 00    	call   *0x43a520
41ff70:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
41ff76:	ff d6                	call   *%esi
41ff78:	e9 9c ba fe ff       	jmp    0x40ba19
41ff7d:	8b 37                	mov    (%edi),%esi
41ff7f:	8d 85 d0 fb ff ff    	lea    -0x430(%ebp),%eax
41ff85:	50                   	push   %eax
41ff86:	ff b5 d4 fb ff ff    	push   -0x42c(%ebp)
41ff8c:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
41ff8f:	6a 00                	push   $0x0
41ff91:	e8 f2 42 ff ff       	call   0x414288
41ff96:	8b 4e 10             	mov    0x10(%esi),%ecx
41ff99:	50                   	push   %eax
41ff9a:	57                   	push   %edi
41ff9b:	ff 15 20 a5 43 00    	call   *0x43a520
41ffa1:	ff 56 10             	call   *0x10(%esi)
41ffa4:	85 c0                	test   %eax,%eax
41ffa6:	78 31                	js     0x41ffd9
41ffa8:	ff b5 d0 fb ff ff    	push   -0x430(%ebp)
41ffae:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
41ffb1:	e8 4e 41 ff ff       	call   0x414104
41ffb6:	6a 00                	push   $0x0
41ffb8:	6a 3b                	push   $0x3b
41ffba:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
41ffbd:	e8 6a bf fe ff       	call   0x40bf2c
41ffc2:	83 f8 ff             	cmp    $0xffffffff,%eax
41ffc5:	0f 84 5b ba fe ff    	je     0x40ba26
41ffcb:	50                   	push   %eax
41ffcc:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
41ffcf:	e8 30 41 ff ff       	call   0x414104
41ffd4:	e9 4d ba fe ff       	jmp    0x40ba26
41ffd9:	8b 45 a0             	mov    -0x60(%ebp),%eax
41ffdc:	83 65 a8 00          	andl   $0x0,-0x58(%ebp)
41ffe0:	33 c9                	xor    %ecx,%ecx
41ffe2:	66 89 08             	mov    %cx,(%eax)
41ffe5:	e9 3c ba fe ff       	jmp    0x40ba26
41ffea:	51                   	push   %ecx
41ffeb:	ff 15 14 a4 43 00    	call   *0x43a414
41fff1:	59                   	pop    %ecx
41fff2:	e9 86 ba fe ff       	jmp    0x40ba7d
41fff7:	50                   	push   %eax
41fff8:	ff 15 14 a4 43 00    	call   *0x43a414
41fffe:	59                   	pop    %ecx
41ffff:	e9 a9 ba fe ff       	jmp    0x40baad
420004:	50                   	push   %eax
420005:	ff 15 14 a4 43 00    	call   *0x43a414
42000b:	59                   	pop    %ecx
42000c:	e9 bd ba fe ff       	jmp    0x40bace
420011:	b8 03 40 00 80       	mov    $0x80004003,%eax
420016:	e9 b5 ba fe ff       	jmp    0x40bad0
42001b:	6a 02                	push   $0x2
42001d:	43                   	inc    %ebx
42001e:	42                   	inc    %edx
42001f:	58                   	pop    %eax
420020:	03 f0                	add    %eax,%esi
420022:	3b d7                	cmp    %edi,%edx
420024:	0f 82 d3 bc fe ff    	jb     0x40bcfd
42002a:	e9 de bc fe ff       	jmp    0x40bd0d
42002f:	66 83 86 a2 01 00 00 	addw   $0x2,0x1a2(%esi)
420036:	02
420037:	e9 f0 bc fe ff       	jmp    0x40bd2c
42003c:	66 83 86 a2 01 00 00 	addw   $0x4,0x1a2(%esi)
420043:	04
420044:	e9 e3 bc fe ff       	jmp    0x40bd2c
420049:	8b 46 10             	mov    0x10(%esi),%eax
42004c:	66 8b 4c 50 02       	mov    0x2(%eax,%edx,2),%cx
420051:	e8 2c bd fe ff       	call   0x40bd82
420056:	85 c0                	test   %eax,%eax
420058:	0f 84 f9 bc fe ff    	je     0x40bd57
42005e:	83 c3 02             	add    $0x2,%ebx
420061:	8d 4e 0c             	lea    0xc(%esi),%ecx
420064:	0f b7 c3             	movzwl %bx,%eax
420067:	89 45 f8             	mov    %eax,-0x8(%ebp)
42006a:	0f b7 c3             	movzwl %bx,%eax
42006d:	50                   	push   %eax
42006e:	66 89 9e a2 01 00 00 	mov    %bx,0x1a2(%esi)
420075:	e8 a1 a9 fe ff       	call   0x40aa1b
42007a:	83 f8 ff             	cmp    $0xffffffff,%eax
42007d:	74 69                	je     0x4200e8
42007f:	3b c7                	cmp    %edi,%eax
420081:	7f 65                	jg     0x4200e8
420083:	0f b7 c0             	movzwl %ax,%eax
420086:	6a 02                	push   $0x2
420088:	8b d0                	mov    %eax,%edx
42008a:	2b c3                	sub    %ebx,%eax
42008c:	59                   	pop    %ecx
42008d:	66 89 86 a4 01 00 00 	mov    %ax,0x1a4(%esi)
420094:	66 3b c1             	cmp    %cx,%ax
420097:	75 1d                	jne    0x4200b6
420099:	8b 4e 10             	mov    0x10(%esi),%ecx
42009c:	0f b7 c3             	movzwl %bx,%eax
42009f:	66 83 7c 41 02 3a    	cmpw   $0x3a,0x2(%ecx,%eax,2)
4200a5:	75 0f                	jne    0x4200b6
4200a7:	8b 45 f8             	mov    -0x8(%ebp),%eax
4200aa:	66 89 86 aa 01 00 00 	mov    %ax,0x1aa(%esi)
4200b1:	e9 a1 bc fe ff       	jmp    0x40bd57
4200b6:	8d 42 01             	lea    0x1(%edx),%eax
4200b9:	0f b7 d8             	movzwl %ax,%ebx
4200bc:	8d 4e 0c             	lea    0xc(%esi),%ecx
4200bf:	66 89 86 a6 01 00 00 	mov    %ax,0x1a6(%esi)
4200c6:	0f b7 c0             	movzwl %ax,%eax
4200c9:	50                   	push   %eax
4200ca:	e8 4c a9 fe ff       	call   0x40aa1b
4200cf:	83 f8 ff             	cmp    $0xffffffff,%eax
4200d2:	74 04                	je     0x4200d8
4200d4:	3b c7                	cmp    %edi,%eax
4200d6:	7e 02                	jle    0x4200da
4200d8:	8b c7                	mov    %edi,%eax
4200da:	2b c3                	sub    %ebx,%eax
4200dc:	66 89 86 a8 01 00 00 	mov    %ax,0x1a8(%esi)
4200e3:	e9 f9 bb fe ff       	jmp    0x40bce1
4200e8:	0f b7 86 ae 01 00 00 	movzwl 0x1ae(%esi),%eax
4200ef:	2b c3                	sub    %ebx,%eax
4200f1:	e9 6a bc fe ff       	jmp    0x40bd60
4200f6:	8b df                	mov    %edi,%ebx
4200f8:	e9 ad bb fe ff       	jmp    0x40bcaa
4200fd:	8d 78 01             	lea    0x1(%eax),%edi
420100:	3b fb                	cmp    %ebx,%edi
420102:	0f 8d b8 bb fe ff    	jge    0x40bcc0
420108:	8b c3                	mov    %ebx,%eax
42010a:	8d 4e 0c             	lea    0xc(%esi),%ecx
42010d:	2b c7                	sub    %edi,%eax
42010f:	50                   	push   %eax
420110:	57                   	push   %edi
420111:	8d 45 e0             	lea    -0x20(%ebp),%eax
420114:	50                   	push   %eax
420115:	e8 01 bf fe ff       	call   0x40c01b
42011a:	8b 08                	mov    (%eax),%ecx
42011c:	89 4d f0             	mov    %ecx,-0x10(%ebp)
42011f:	8b 48 04             	mov    0x4(%eax),%ecx
420122:	8b 40 08             	mov    0x8(%eax),%eax
420125:	89 45 f4             	mov    %eax,-0xc(%ebp)
420128:	8d 04 09             	lea    (%ecx,%ecx,1),%eax
42012b:	89 45 f8             	mov    %eax,-0x8(%ebp)
42012e:	83 c0 02             	add    $0x2,%eax
420131:	e8 ca de ff ff       	call   0x41e000
420136:	8b cc                	mov    %esp,%ecx
420138:	89 4d ec             	mov    %ecx,-0x14(%ebp)
42013b:	85 c9                	test   %ecx,%ecx
42013d:	75 17                	jne    0x420156
42013f:	8b 4d 04             	mov    0x4(%ebp),%ecx
420142:	ba 15 02 00 00       	mov    $0x215,%edx
420147:	68 0e 00 07 80       	push   $0x8007000e
42014c:	68 34 7a 40 00       	push   $0x407a34
420151:	e8 e3 d1 00 00       	call   0x42d339
420156:	8b 45 f4             	mov    -0xc(%ebp),%eax
420159:	8b 55 f0             	mov    -0x10(%ebp),%edx
42015c:	ff 75 f8             	push   -0x8(%ebp)
42015f:	8b 40 04             	mov    0x4(%eax),%eax
420162:	8d 04 50             	lea    (%eax,%edx,2),%eax
420165:	50                   	push   %eax
420166:	51                   	push   %ecx
420167:	e8 7a ad ff ff       	call   0x41aee6
42016c:	8b 45 ec             	mov    -0x14(%ebp),%eax
42016f:	83 c4 0c             	add    $0xc,%esp
420172:	8b 4d f8             	mov    -0x8(%ebp),%ecx
420175:	33 d2                	xor    %edx,%edx
420177:	50                   	push   %eax
420178:	66 89 14 01          	mov    %dx,(%ecx,%eax,1)
42017c:	ff 15 88 a4 43 00    	call   *0x43a488
420182:	89 86 bc 01 00 00    	mov    %eax,0x1bc(%esi)
420188:	b8 fd ff 00 00       	mov    $0xfffd,%eax
42018d:	66 21 86 b6 01 00 00 	and    %ax,0x1b6(%esi)
420194:	4f                   	dec    %edi
420195:	59                   	pop    %ecx
420196:	e9 27 bb fe ff       	jmp    0x40bcc2
42019b:	3b f3                	cmp    %ebx,%esi
42019d:	0f 8d 5e bc fe ff    	jge    0x40be01
4201a3:	e9 57 bc fe ff       	jmp    0x40bdff
4201a8:	8d 42 02             	lea    0x2(%edx),%eax
4201ab:	39 47 18             	cmp    %eax,0x18(%edi)
4201ae:	76 26                	jbe    0x4201d6
4201b0:	8b 47 10             	mov    0x10(%edi),%eax
4201b3:	66 8b 4c 50 02       	mov    0x2(%eax,%edx,2),%cx
4201b8:	e8 c5 bb fe ff       	call   0x40bd82
4201bd:	85 c0                	test   %eax,%eax
4201bf:	74 15                	je     0x4201d6
4201c1:	8b 47 10             	mov    0x10(%edi),%eax
4201c4:	66 8b 4c 50 04       	mov    0x4(%eax,%edx,2),%cx
4201c9:	e8 b4 bb fe ff       	call   0x40bd82
4201ce:	85 c0                	test   %eax,%eax
4201d0:	0f 85 96 bc fe ff    	jne    0x40be6c
4201d6:	0f b7 4f 18          	movzwl 0x18(%edi),%ecx
4201da:	b8 fb ff 00 00       	mov    $0xfffb,%eax
4201df:	66 21 87 b6 01 00 00 	and    %ax,0x1b6(%edi)
4201e6:	33 c0                	xor    %eax,%eax
4201e8:	89 87 a8 01 00 00    	mov    %eax,0x1a8(%edi)
4201ee:	66 89 87 a4 01 00 00 	mov    %ax,0x1a4(%edi)
4201f5:	66 89 87 a0 01 00 00 	mov    %ax,0x1a0(%edi)
4201fc:	8d 42 01             	lea    0x1(%edx),%eax
4201ff:	66 89 87 ba 01 00 00 	mov    %ax,0x1ba(%edi)
420206:	8b c1                	mov    %ecx,%eax
420208:	83 fe ff             	cmp    $0xffffffff,%esi
42020b:	74 08                	je     0x420215
42020d:	0f b7 c6             	movzwl %si,%eax
420210:	2b c8                	sub    %eax,%ecx
420212:	0f b7 d9             	movzwl %cx,%ebx
420215:	66 89 87 ae 01 00 00 	mov    %ax,0x1ae(%edi)
42021c:	66 89 9f b0 01 00 00 	mov    %bx,0x1b0(%edi)
420223:	e9 84 bc fe ff       	jmp    0x40beac
420228:	33 c0                	xor    %eax,%eax
42022a:	40                   	inc    %eax
42022b:	66 89 87 a0 01 00 00 	mov    %ax,0x1a0(%edi)
420232:	e9 75 bc fe ff       	jmp    0x40beac
420237:	ff 35 40 8e 43 00    	push   0x438e40
42023d:	8d 4d f0             	lea    -0x10(%ebp),%ecx
420240:	e8 1c bd fe ff       	call   0x40bf61
420245:	85 c0                	test   %eax,%eax
420247:	75 07                	jne    0x420250
420249:	6a 09                	push   $0x9
42024b:	e9 a1 bc fe ff       	jmp    0x40bef1
420250:	39 5d f4             	cmp    %ebx,-0xc(%ebp)
420253:	75 07                	jne    0x42025c
420255:	6a 03                	push   $0x3
420257:	e9 95 bc fe ff       	jmp    0x40bef1
42025c:	6a 06                	push   $0x6
42025e:	e9 8e bc fe ff       	jmp    0x40bef1
420263:	8b 47 10             	mov    0x10(%edi),%eax
420266:	6a 5c                	push   $0x5c
420268:	5a                   	pop    %edx
420269:	0f b7 08             	movzwl (%eax),%ecx
42026c:	66 3b ca             	cmp    %dx,%cx