412d78:	66 89 04 3e          	mov    %ax,(%esi,%edi,1)
412d7c:	8b b5 4c fd ff ff    	mov    -0x2b4(%ebp),%esi
412d82:	eb 17                	jmp    0x412d9b
412d84:	56                   	push   %esi
412d85:	c6 85 4c fd ff ff 00 	movb   $0x0,-0x2b4(%ebp)
412d8c:	ff b5 4c fd ff ff    	push   -0x2b4(%ebp)
412d92:	51                   	push   %ecx
412d93:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
412d96:	e8 75 f8 fe ff       	call   0x402610
412d9b:	56                   	push   %esi
412d9c:	e8 ac 32 01 00       	call   0x42604d
412da1:	83 c4 04             	add    $0x4,%esp
412da4:	8b b5 44 fd ff ff    	mov    -0x2bc(%ebp),%esi
412daa:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
412dae:	8b 4d d0             	mov    -0x30(%ebp),%ecx
412db1:	83 f9 08             	cmp    $0x8,%ecx
412db4:	72 32                	jb     0x412de8
412db6:	8b 55 bc             	mov    -0x44(%ebp),%edx
412db9:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
412dc0:	8b c2                	mov    %edx,%eax
412dc2:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
412dc8:	72 14                	jb     0x412dde
412dca:	8b 50 fc             	mov    -0x4(%eax),%edx
412dcd:	83 c1 23             	add    $0x23,%ecx
412dd0:	2b c2                	sub    %edx,%eax
412dd2:	83 c0 fc             	add    $0xfffffffc,%eax
412dd5:	83 f8 1f             	cmp    $0x1f,%eax
412dd8:	0f 87 f3 04 00 00    	ja     0x4132d1
412dde:	51                   	push   %ecx
412ddf:	52                   	push   %edx
412de0:	e8 29 8b 00 00       	call   0x41b90e
412de5:	83 c4 08             	add    $0x8,%esp
412de8:	83 7d e8 08          	cmpl   $0x8,-0x18(%ebp)
412dec:	8d 8d 54 fd ff ff    	lea    -0x2ac(%ebp),%ecx
412df2:	8d 45 d4             	lea    -0x2c(%ebp),%eax
412df5:	0f 43 45 d4          	cmovae -0x2c(%ebp),%eax
412df9:	51                   	push   %ecx
412dfa:	50                   	push   %eax
412dfb:	ff 15 44 f0 43 00    	call   *0x43f044
412e01:	6a 00                	push   $0x0
412e03:	68 2c af 44 00       	push   $0x44af2c
412e08:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
412e0b:	89 85 4c fd ff ff    	mov    %eax,-0x2b4(%ebp)
412e11:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
412e18:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
412e1f:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
412e26:	e8 e5 f6 fe ff       	call   0x402510
412e2b:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
412e2f:	ba 01 00 00 00       	mov    $0x1,%edx
412e34:	39 56 10             	cmp    %edx,0x10(%esi)
412e37:	8b ce                	mov    %esi,%ecx
412e39:	0f 42 56 10          	cmovb  0x10(%esi),%edx
412e3d:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
412e41:	72 02                	jb     0x412e45
412e43:	8b 0e                	mov    (%esi),%ecx
412e45:	6a 01                	push   $0x1
412e47:	68 14 dc 44 00       	push   $0x44dc14
412e4c:	e8 4f f6 fe ff       	call   0x4024a0
412e51:	83 c4 08             	add    $0x8,%esp
412e54:	85 c0                	test   %eax,%eax
412e56:	74 3d                	je     0x412e95
412e58:	8b 4d b8             	mov    -0x48(%ebp),%ecx
412e5b:	83 f9 01             	cmp    $0x1,%ecx
412e5e:	72 19                	jb     0x412e79
412e60:	83 f9 08             	cmp    $0x8,%ecx
412e63:	c7 45 b4 01 00 00 00 	movl   $0x1,-0x4c(%ebp)
412e6a:	8d 45 a4             	lea    -0x5c(%ebp),%eax
412e6d:	0f 43 45 a4          	cmovae -0x5c(%ebp),%eax
412e71:	c7 00 2e 00 00 00    	movl   $0x2e,(%eax)
412e77:	eb 1c                	jmp    0x412e95
412e79:	68 14 dc 44 00       	push   $0x44dc14
412e7e:	c6 85 48 fd ff ff 00 	movb   $0x0,-0x2b8(%ebp)
412e85:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
412e88:	ff b5 48 fd ff ff    	push   -0x2b8(%ebp)
412e8e:	6a 01                	push   $0x1
412e90:	e8 7b f7 fe ff       	call   0x402610
412e95:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
412e99:	8b d6                	mov    %esi,%edx
412e9b:	72 02                	jb     0x412e9f
412e9d:	8b 16                	mov    (%esi),%edx
412e9f:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
412ea2:	8b 45 b8             	mov    -0x48(%ebp),%eax
412ea5:	8b 7e 10             	mov    0x10(%esi),%edi
412ea8:	2b c1                	sub    %ecx,%eax
412eaa:	89 8d 48 fd ff ff    	mov    %ecx,-0x2b8(%ebp)
412eb0:	3b f8                	cmp    %eax,%edi
412eb2:	77 32                	ja     0x412ee6
412eb4:	83 7d b8 08          	cmpl   $0x8,-0x48(%ebp)
412eb8:	8d 04 0f             	lea    (%edi,%ecx,1),%eax
412ebb:	8d 75 a4             	lea    -0x5c(%ebp),%esi
412ebe:	89 45 b4             	mov    %eax,-0x4c(%ebp)
412ec1:	0f 43 75 a4          	cmovae -0x5c(%ebp),%esi
412ec5:	8d 04 3f             	lea    (%edi,%edi,1),%eax
412ec8:	50                   	push   %eax
412ec9:	52                   	push   %edx
412eca:	8d 0c 4e             	lea    (%esi,%ecx,2),%ecx
412ecd:	51                   	push   %ecx
412ece:	e8 7d a5 00 00       	call   0x41d450
412ed3:	8b 85 48 fd ff ff    	mov    -0x2b8(%ebp),%eax
412ed9:	83 c4 0c             	add    $0xc,%esp
412edc:	03 c7                	add    %edi,%eax
412ede:	33 c9                	xor    %ecx,%ecx
412ee0:	66 89 0c 46          	mov    %cx,(%esi,%eax,2)
412ee4:	eb 18                	jmp    0x412efe
412ee6:	57                   	push   %edi
412ee7:	52                   	push   %edx
412ee8:	c6 85 48 fd ff ff 00 	movb   $0x0,-0x2b8(%ebp)
412eef:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
412ef2:	ff b5 48 fd ff ff    	push   -0x2b8(%ebp)
412ef8:	57                   	push   %edi
412ef9:	e8 42 f8 fe ff       	call   0x402740
412efe:	83 bd 4c fd ff ff ff 	cmpl   $0xffffffff,-0x2b4(%ebp)
412f05:	0f 84 20 03 00 00    	je     0x41322b
412f0b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
412f10:	68 14 dc 44 00       	push   $0x44dc14
412f15:	8d 85 80 fd ff ff    	lea    -0x280(%ebp),%eax
412f1b:	50                   	push   %eax
412f1c:	ff 15 6c f0 43 00    	call   *0x43f06c
412f22:	85 c0                	test   %eax,%eax
412f24:	0f 84 d7 02 00 00    	je     0x413201
412f2a:	68 18 dc 44 00       	push   $0x44dc18
412f2f:	8d 85 80 fd ff ff    	lea    -0x280(%ebp),%eax
412f35:	50                   	push   %eax
412f36:	ff 15 6c f0 43 00    	call   *0x43f06c
412f3c:	85 c0                	test   %eax,%eax
412f3e:	0f 84 bd 02 00 00    	je     0x413201
412f44:	8d 45 d4             	lea    -0x2c(%ebp),%eax
412f47:	3b c3                	cmp    %ebx,%eax
412f49:	74 4e                	je     0x412f99
412f4b:	83 7b 14 08          	cmpl   $0x8,0x14(%ebx)
412f4f:	8b cb                	mov    %ebx,%ecx
412f51:	72 02                	jb     0x412f55
412f53:	8b 0b                	mov    (%ebx),%ecx
412f55:	8b 43 10             	mov    0x10(%ebx),%eax
412f58:	8b 55 e8             	mov    -0x18(%ebp),%edx
412f5b:	3b c2                	cmp    %edx,%eax
412f5d:	77 23                	ja     0x412f82
412f5f:	8d 34 00             	lea    (%eax,%eax,1),%esi
412f62:	89 45 e4             	mov    %eax,-0x1c(%ebp)
412f65:	83 fa 08             	cmp    $0x8,%edx
412f68:	8d 7d d4             	lea    -0x2c(%ebp),%edi
412f6b:	56                   	push   %esi
412f6c:	0f 43 7d d4          	cmovae -0x2c(%ebp),%edi
412f70:	51                   	push   %ecx
412f71:	57                   	push   %edi
412f72:	e8 d9 a4 00 00       	call   0x41d450
412f77:	83 c4 0c             	add    $0xc,%esp
412f7a:	33 c0                	xor    %eax,%eax
412f7c:	66 89 04 3e          	mov    %ax,(%esi,%edi,1)
412f80:	eb 17                	jmp    0x412f99
412f82:	51                   	push   %ecx
412f83:	c6 85 48 fd ff ff 00 	movb   $0x0,-0x2b8(%ebp)
412f8a:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
412f8d:	ff b5 48 fd ff ff    	push   -0x2b8(%ebp)
412f93:	50                   	push   %eax
412f94:	e8 77 f6 fe ff       	call   0x402610
412f99:	8d 8d 80 fd ff ff    	lea    -0x280(%ebp),%ecx
412f9f:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
412fa6:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
412fad:	8d 51 02             	lea    0x2(%ecx),%edx
412fb0:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
412fb7:	66 8b 01             	mov    (%ecx),%ax
412fba:	83 c1 02             	add    $0x2,%ecx
412fbd:	66 85 c0             	test   %ax,%ax
412fc0:	75 f5                	jne    0x412fb7
412fc2:	2b ca                	sub    %edx,%ecx
412fc4:	8d 85 80 fd ff ff    	lea    -0x280(%ebp),%eax
412fca:	d1 f9                	sar    $1,%ecx
412fcc:	51                   	push   %ecx
412fcd:	50                   	push   %eax
412fce:	8d 4d bc             	lea    -0x44(%ebp),%ecx
412fd1:	e8 3a f5 fe ff       	call   0x402510
412fd6:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
412fda:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
412fdd:	85 c9                	test   %ecx,%ecx
412fdf:	0f 84 c4 00 00 00    	je     0x4130a9
412fe5:	8b 45 cc             	mov    -0x34(%ebp),%eax
412fe8:	85 c0                	test   %eax,%eax
412fea:	0f 84 b9 00 00 00    	je     0x4130a9
412ff0:	8d 71 0b             	lea    0xb(%ecx),%esi
412ff3:	ba 02 00 00 00       	mov    $0x2,%edx
412ff8:	03 f0                	add    %eax,%esi
412ffa:	33 c9                	xor    %ecx,%ecx
412ffc:	8b c6                	mov    %esi,%eax
412ffe:	f7 e2                	mul    %edx
413000:	0f 90 c1             	seto   %cl
413003:	f7 d9                	neg    %ecx
413005:	0b c8                	or     %eax,%ecx
413007:	51                   	push   %ecx
413008:	e8 46 36 01 00       	call   0x426653
41300d:	8b d8                	mov    %eax,%ebx
41300f:	83 c4 04             	add    $0x4,%esp
413012:	85 db                	test   %ebx,%ebx
413014:	0f 84 8f 00 00 00    	je     0x4130a9
41301a:	83 7d e8 08          	cmpl   $0x8,-0x18(%ebp)
41301e:	8d 45 d4             	lea    -0x2c(%ebp),%eax
413021:	0f 43 45 d4          	cmovae -0x2c(%ebp),%eax
413025:	50                   	push   %eax
413026:	56                   	push   %esi
413027:	53                   	push   %ebx
413028:	e8 49 34 01 00       	call   0x426476
41302d:	83 c4 0c             	add    $0xc,%esp
413030:	8d 45 bc             	lea    -0x44(%ebp),%eax
413033:	83 7d d0 08          	cmpl   $0x8,-0x30(%ebp)
413037:	0f 43 45 bc          	cmovae -0x44(%ebp),%eax
41303b:	50                   	push   %eax
41303c:	53                   	push   %ebx
41303d:	ff 15 fc f1 43 00    	call   *0x43f1fc
413043:	8b cb                	mov    %ebx,%ecx
413045:	8d 51 02             	lea    0x2(%ecx),%edx
413048:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
41304f:	00
413050:	66 8b 01             	mov    (%ecx),%ax
413053:	83 c1 02             	add    $0x2,%ecx
413056:	66 85 c0             	test   %ax,%ax
413059:	75 f5                	jne    0x413050
41305b:	8b 45 e8             	mov    -0x18(%ebp),%eax
41305e:	2b ca                	sub    %edx,%ecx
413060:	d1 f9                	sar    $1,%ecx
413062:	3b c8                	cmp    %eax,%ecx
413064:	77 23                	ja     0x413089
413066:	8d 34 09             	lea    (%ecx,%ecx,1),%esi
413069:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
41306c:	83 f8 08             	cmp    $0x8,%eax
41306f:	8d 7d d4             	lea    -0x2c(%ebp),%edi
413072:	56                   	push   %esi
413073:	0f 43 7d d4          	cmovae -0x2c(%ebp),%edi
413077:	53                   	push   %ebx
413078:	57                   	push   %edi
413079:	e8 d2 a3 00 00       	call   0x41d450
41307e:	83 c4 0c             	add    $0xc,%esp
413081:	33 c0                	xor    %eax,%eax
413083:	66 89 04 37          	mov    %ax,(%edi,%esi,1)
413087:	eb 17                	jmp    0x4130a0
413089:	53                   	push   %ebx
41308a:	c6 85 3c fd ff ff 00 	movb   $0x0,-0x2c4(%ebp)
413091:	ff b5 3c fd ff ff    	push   -0x2c4(%ebp)
413097:	51                   	push   %ecx
413098:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
41309b:	e8 70 f5 fe ff       	call   0x402610
4130a0:	53                   	push   %ebx
4130a1:	e8 a7 2f 01 00       	call   0x42604d
4130a6:	83 c4 04             	add    $0x4,%esp
4130a9:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4130ad:	8b 4d d0             	mov    -0x30(%ebp),%ecx
4130b0:	83 f9 08             	cmp    $0x8,%ecx
4130b3:	72 32                	jb     0x4130e7
4130b5:	8b 55 bc             	mov    -0x44(%ebp),%edx
4130b8:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
4130bf:	8b c2                	mov    %edx,%eax
4130c1:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4130c7:	72 14                	jb     0x4130dd
4130c9:	8b 50 fc             	mov    -0x4(%eax),%edx
4130cc:	83 c1 23             	add    $0x23,%ecx
4130cf:	2b c2                	sub    %edx,%eax
4130d1:	83 c0 fc             	add    $0xfffffffc,%eax
4130d4:	83 f8 1f             	cmp    $0x1f,%eax
4130d7:	0f 87 f4 01 00 00    	ja     0x4132d1
4130dd:	51                   	push   %ecx
4130de:	52                   	push   %edx
4130df:	e8 2a 88 00 00       	call   0x41b90e
4130e4:	83 c4 08             	add    $0x8,%esp
4130e7:	f6 85 54 fd ff ff 10 	testb  $0x10,-0x2ac(%ebp)
4130ee:	74 26                	je     0x413116
4130f0:	8b 95 44 fd ff ff    	mov    -0x2bc(%ebp),%edx
4130f6:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4130f9:	6a 00                	push   $0x0
4130fb:	6a 01                	push   $0x1
4130fd:	ff b5 40 fd ff ff    	push   -0x2c0(%ebp)
413103:	e8 38 fb ff ff       	call   0x412c40
413108:	83 c4 0c             	add    $0xc,%esp
41310b:	88 85 53 fd ff ff    	mov    %al,-0x2ad(%ebp)
413111:	e9 eb 00 00 00       	jmp    0x413201
413116:	8d 8d 80 fd ff ff    	lea    -0x280(%ebp),%ecx
41311c:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
413123:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
41312a:	8d 51 02             	lea    0x2(%ecx),%edx
41312d:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
413134:	66 8b 01             	mov    (%ecx),%ax
413137:	83 c1 02             	add    $0x2,%ecx
41313a:	66 85 c0             	test   %ax,%ax
41313d:	75 f5                	jne    0x413134
41313f:	2b ca                	sub    %edx,%ecx
413141:	8d 85 80 fd ff ff    	lea    -0x280(%ebp),%eax
413147:	d1 f9                	sar    $1,%ecx
413149:	51                   	push   %ecx
41314a:	50                   	push   %eax
41314b:	8d 4d bc             	lea    -0x44(%ebp),%ecx
41314e:	e8 bd f3 fe ff       	call   0x402510
413153:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
413157:	8b 45 cc             	mov    -0x34(%ebp),%eax
41315a:	8b 5d b4             	mov    -0x4c(%ebp),%ebx
41315d:	8b 75 bc             	mov    -0x44(%ebp),%esi
413160:	3b c3                	cmp    %ebx,%eax
413162:	76 62                	jbe    0x4131c6
413164:	8b f8                	mov    %eax,%edi
413166:	2b fb                	sub    %ebx,%edi
413168:	3b c7                	cmp    %edi,%eax
41316a:	0f 82 66 01 00 00    	jb     0x4132d6
413170:	83 7d b8 08          	cmpl   $0x8,-0x48(%ebp)
413174:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
413177:	8b d3                	mov    %ebx,%edx
413179:	0f 43 4d a4          	cmovae -0x5c(%ebp),%ecx
41317d:	2b c7                	sub    %edi,%eax
41317f:	3b c3                	cmp    %ebx,%eax
413181:	53                   	push   %ebx
413182:	0f 42 d0             	cmovb  %eax,%edx
413185:	8d 45 bc             	lea    -0x44(%ebp),%eax
413188:	83 7d d0 08          	cmpl   $0x8,-0x30(%ebp)
41318c:	51                   	push   %ecx
41318d:	0f 43 c6             	cmovae %esi,%eax
413190:	8d 0c 78             	lea    (%eax,%edi,2),%ecx
413193:	e8 08 f3 fe ff       	call   0x4024a0
413198:	83 c4 08             	add    $0x8,%esp
41319b:	85 c0                	test   %eax,%eax
41319d:	75 27                	jne    0x4131c6
41319f:	8b bd 40 fd ff ff    	mov    -0x2c0(%ebp),%edi
4131a5:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4131a8:	51                   	push   %ecx
4131a9:	8b 47 04             	mov    0x4(%edi),%eax
4131ac:	3b 47 08             	cmp    0x8(%edi),%eax
4131af:	74 0d                	je     0x4131be
4131b1:	8b c8                	mov    %eax,%ecx
4131b3:	e8 08 f1 fe ff       	call   0x4022c0
4131b8:	83 47 04 18          	addl   $0x18,0x4(%edi)
4131bc:	eb 08                	jmp    0x4131c6
4131be:	50                   	push   %eax
4131bf:	8b cf                	mov    %edi,%ecx
4131c1:	e8 8a 9e ff ff       	call   0x40d050
4131c6:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4131ca:	8b 45 d0             	mov    -0x30(%ebp),%eax
4131cd:	83 f8 08             	cmp    $0x8,%eax
4131d0:	72 2f                	jb     0x413201
4131d2:	8d 0c 45 02 00 00 00 	lea    0x2(,%eax,2),%ecx
4131d9:	8b c6                	mov    %esi,%eax
4131db:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
4131e1:	72 14                	jb     0x4131f7
4131e3:	8b 70 fc             	mov    -0x4(%eax),%esi
4131e6:	83 c1 23             	add    $0x23,%ecx
4131e9:	2b c6                	sub    %esi,%eax
4131eb:	83 c0 fc             	add    $0xfffffffc,%eax
4131ee:	83 f8 1f             	cmp    $0x1f,%eax
4131f1:	0f 87 e4 00 00 00    	ja     0x4132db
4131f7:	51                   	push   %ecx
4131f8:	56                   	push   %esi
4131f9:	e8 10 87 00 00       	call   0x41b90e
4131fe:	83 c4 08             	add    $0x8,%esp
413201:	8b 9d 4c fd ff ff    	mov    -0x2b4(%ebp),%ebx
413207:	8d 85 54 fd ff ff    	lea    -0x2ac(%ebp),%eax
41320d:	50                   	push   %eax