40acf8:	ff 15 18 c2 42 00    	call   *0x42c218
40acfe:	50                   	push   %eax
40acff:	a1 00 b0 42 00       	mov    0x42b000,%eax
40ad04:	ba e0 21 40 00       	mov    $0x4021e0,%edx
40ad09:	ff 70 14             	push   0x14(%eax)
40ad0c:	ff 70 10             	push   0x10(%eax)
40ad0f:	6a 5d                	push   $0x5d
40ad11:	59                   	pop    %ecx
40ad12:	e8 b7 c6 ff ff       	call   0x4073ce
40ad17:	8b 8f 8c 01 00 00    	mov    0x18c(%edi),%ecx
40ad1d:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
40ad23:	50                   	push   %eax
40ad24:	8d 85 58 fb ff ff    	lea    -0x4a8(%ebp),%eax
40ad2a:	50                   	push   %eax
40ad2b:	8b 51 14             	mov    0x14(%ecx),%edx
40ad2e:	8b 49 28             	mov    0x28(%ecx),%ecx
40ad31:	e8 a7 6d 00 00       	call   0x411add
40ad36:	85 c0                	test   %eax,%eax
40ad38:	79 3a                	jns    0x40ad74
40ad3a:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
40ad40:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
40ad46:	74 1a                	je     0x40ad62
40ad48:	f6 41 1c 02          	testb  $0x2,0x1c(%ecx)
40ad4c:	74 14                	je     0x40ad62
40ad4e:	50                   	push   %eax
40ad4f:	ff 71 14             	push   0x14(%ecx)
40ad52:	ba e0 21 40 00       	mov    $0x4021e0,%edx
40ad57:	ff 71 10             	push   0x10(%ecx)
40ad5a:	6a 5e                	push   $0x5e
40ad5c:	59                   	pop    %ecx
40ad5d:	e8 6c c6 ff ff       	call   0x4073ce
40ad62:	6a 50                	push   $0x50
40ad64:	8d 85 58 fb ff ff    	lea    -0x4a8(%ebp),%eax
40ad6a:	53                   	push   %ebx
40ad6b:	50                   	push   %eax
40ad6c:	e8 3c d6 01 00       	call   0x4283ad
40ad71:	83 c4 0c             	add    $0xc,%esp
40ad74:	8b 85 64 fb ff ff    	mov    -0x49c(%ebp),%eax
40ad7a:	8b 8f 8c 01 00 00    	mov    0x18c(%edi),%ecx
40ad80:	85 c0                	test   %eax,%eax
40ad82:	75 03                	jne    0x40ad87
40ad84:	8b 41 10             	mov    0x10(%ecx),%eax
40ad87:	50                   	push   %eax
40ad88:	ff b5 58 fb ff ff    	push   -0x4a8(%ebp)
40ad8e:	8d 9f b0 01 00 00    	lea    0x1b0(%edi),%ebx
40ad94:	56                   	push   %esi
40ad95:	6a 00                	push   $0x0
40ad97:	ff 71 28             	push   0x28(%ecx)
40ad9a:	8b cb                	mov    %ebx,%ecx
40ad9c:	e8 3c c7 00 00       	call   0x4174dd
40ada1:	8b f0                	mov    %eax,%esi
40ada3:	85 f6                	test   %esi,%esi
40ada5:	79 33                	jns    0x40adda
40ada7:	a1 00 b0 42 00       	mov    0x42b000,%eax
40adac:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40adb1:	0f 84 bf 03 00 00    	je     0x40b176
40adb7:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40adbb:	0f 84 b5 03 00 00    	je     0x40b176
40adc1:	56                   	push   %esi
40adc2:	ff 70 14             	push   0x14(%eax)
40adc5:	ff 70 10             	push   0x10(%eax)
40adc8:	6a 5f                	push   $0x5f
40adca:	ba e0 21 40 00       	mov    $0x4021e0,%edx
40adcf:	59                   	pop    %ecx
40add0:	e8 f9 c5 ff ff       	call   0x4073ce
40add5:	e9 9c 03 00 00       	jmp    0x40b176
40adda:	ff b5 54 fa ff ff    	push   -0x5ac(%ebp)
40ade0:	8b cb                	mov    %ebx,%ecx
40ade2:	e8 c7 cf 00 00       	call   0x417dae
40ade7:	33 db                	xor    %ebx,%ebx
40ade9:	33 ff                	xor    %edi,%edi
40adeb:	8d b5 30 ff ff ff    	lea    -0xd0(%ebp),%esi
40adf1:	68 00 00 40 00       	push   $0x400000
40adf6:	ff b7 c0 21 40 00    	push   0x4021c0(%edi)
40adfc:	03 f3                	add    %ebx,%esi
40adfe:	8b ce                	mov    %esi,%ecx
40ae00:	e8 c7 18 00 00       	call   0x40c6cc
40ae05:	8b 06                	mov    (%esi),%eax
40ae07:	83 c7 04             	add    $0x4,%edi
40ae0a:	89 44 1d 90          	mov    %eax,-0x70(%ebp,%ebx,1)
40ae0e:	83 c3 0c             	add    $0xc,%ebx
40ae11:	83 ff 20             	cmp    $0x20,%edi
40ae14:	72 d5                	jb     0x40adeb
40ae16:	8b bd 50 fa ff ff    	mov    -0x5b0(%ebp),%edi
40ae1c:	8d 5d 90             	lea    -0x70(%ebp),%ebx
40ae1f:	c7 85 50 fa ff ff 08 	movl   $0x8,-0x5b0(%ebp)
40ae26:	00 00 00
40ae29:	33 d2                	xor    %edx,%edx
40ae2b:	8b 87 c4 01 00 00    	mov    0x1c4(%edi),%eax
40ae31:	89 45 94             	mov    %eax,-0x6c(%ebp)
40ae34:	8b 87 f8 01 00 00    	mov    0x1f8(%edi),%eax
40ae3a:	89 45 a0             	mov    %eax,-0x60(%ebp)
40ae3d:	8b 87 04 02 00 00    	mov    0x204(%edi),%eax
40ae43:	89 45 ac             	mov    %eax,-0x54(%ebp)
40ae46:	8b 87 1c 02 00 00    	mov    0x21c(%edi),%eax
40ae4c:	89 45 b8             	mov    %eax,-0x48(%ebp)
40ae4f:	8b 87 38 02 00 00    	mov    0x238(%edi),%eax
40ae55:	89 45 c4             	mov    %eax,-0x3c(%ebp)
40ae58:	8b 87 44 02 00 00    	mov    0x244(%edi),%eax
40ae5e:	89 45 d0             	mov    %eax,-0x30(%ebp)
40ae61:	8b 87 68 02 00 00    	mov    0x268(%edi),%eax
40ae67:	89 45 dc             	mov    %eax,-0x24(%ebp)
40ae6a:	8b 87 5c 02 00 00    	mov    0x25c(%edi),%eax
40ae70:	89 45 e8             	mov    %eax,-0x18(%ebp)
40ae73:	8b 4c 15 90          	mov    -0x70(%ebp,%edx,1),%ecx
40ae77:	8b 44 15 94          	mov    -0x6c(%ebp,%edx,1),%eax
40ae7b:	89 8c 15 ac fb ff ff 	mov    %ecx,-0x454(%ebp,%edx,1)
40ae82:	89 84 15 b0 fb ff ff 	mov    %eax,-0x450(%ebp,%edx,1)
40ae89:	89 8c 15 dc fa ff ff 	mov    %ecx,-0x524(%ebp,%edx,1)
40ae90:	89 84 15 e0 fa ff ff 	mov    %eax,-0x520(%ebp,%edx,1)
40ae97:	83 c2 0c             	add    $0xc,%edx
40ae9a:	83 fa 60             	cmp    $0x60,%edx
40ae9d:	72 d4                	jb     0x40ae73
40ae9f:	8d 47 48             	lea    0x48(%edi),%eax
40aea2:	68 60 1f 40 00       	push   $0x401f60
40aea7:	8b c8                	mov    %eax,%ecx
40aea9:	89 85 48 fa ff ff    	mov    %eax,-0x5b8(%ebp)
40aeaf:	e8 04 12 00 00       	call   0x40c0b8
40aeb4:	8b f0                	mov    %eax,%esi
40aeb6:	85 f6                	test   %esi,%esi
40aeb8:	79 27                	jns    0x40aee1
40aeba:	a1 00 b0 42 00       	mov    0x42b000,%eax
40aebf:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40aec4:	0f 84 ac 02 00 00    	je     0x40b176
40aeca:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40aece:	0f 84 a2 02 00 00    	je     0x40b176
40aed4:	ff 70 14             	push   0x14(%eax)
40aed7:	ff 70 10             	push   0x10(%eax)
40aeda:	6a 60                	push   $0x60
40aedc:	e9 8a 02 00 00       	jmp    0x40b16b
40aee1:	8d b7 e8 02 00 00    	lea    0x2e8(%edi),%esi
40aee7:	8b d6                	mov    %esi,%edx
40aee9:	e8 60 d0 00 00       	call   0x417f4e
40aeee:	85 c0                	test   %eax,%eax
40aef0:	0f 88 1b 01 00 00    	js     0x40b011
40aef6:	8b 8f 8c 01 00 00    	mov    0x18c(%edi),%ecx
40aefc:	8d 95 a8 fb ff ff    	lea    -0x458(%ebp),%edx
40af02:	8b 87 b8 01 00 00    	mov    0x1b8(%edi),%eax
40af08:	89 85 30 fc ff ff    	mov    %eax,-0x3d0(%ebp)
40af0e:	8b 87 10 02 00 00    	mov    0x210(%edi),%eax
40af14:	89 85 34 fc ff ff    	mov    %eax,-0x3cc(%ebp)
40af1a:	c7 85 a8 fb ff ff 60 	movl   $0x401f60,-0x458(%ebp)
40af21:	1f 40 00
40af24:	c7 85 24 fc ff ff 08 	movl   $0x8,-0x3dc(%ebp)
40af2b:	00 00 00
40af2e:	c7 85 28 fc ff ff 01 	movl   $0x1,-0x3d8(%ebp)
40af35:	00 00 00
40af38:	8b 41 08             	mov    0x8(%ecx),%eax
40af3b:	89 85 38 fc ff ff    	mov    %eax,-0x3c8(%ebp)
40af41:	8b 41 0c             	mov    0xc(%ecx),%eax
40af44:	89 85 3c fc ff ff    	mov    %eax,-0x3c4(%ebp)
40af4a:	8d 85 58 fb ff ff    	lea    -0x4a8(%ebp),%eax
40af50:	89 85 40 fc ff ff    	mov    %eax,-0x3c0(%ebp)
40af56:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
40af5c:	89 85 44 fc ff ff    	mov    %eax,-0x3bc(%ebp)
40af62:	8b 41 28             	mov    0x28(%ecx),%eax
40af65:	89 85 48 fc ff ff    	mov    %eax,-0x3b8(%ebp)
40af6b:	8b 85 40 fa ff ff    	mov    -0x5c0(%ebp),%eax
40af71:	51                   	push   %ecx
40af72:	89 85 4c fc ff ff    	mov    %eax,-0x3b4(%ebp)
40af78:	8b 87 d8 02 00 00    	mov    0x2d8(%edi),%eax
40af7e:	51                   	push   %ecx
40af7f:	8b 0e                	mov    (%esi),%ecx
40af81:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
40af87:	e8 a9 d4 00 00       	call   0x418435
40af8c:	8b c8                	mov    %eax,%ecx
40af8e:	85 c9                	test   %ecx,%ecx
40af90:	78 52                	js     0x40afe4
40af92:	8b 0e                	mov    (%esi),%ecx
40af94:	8d 85 44 fa ff ff    	lea    -0x5bc(%ebp),%eax
40af9a:	50                   	push   %eax
40af9b:	8d 85 58 fa ff ff    	lea    -0x5a8(%ebp),%eax
40afa1:	c7 85 d8 fa ff ff 60 	movl   $0x401f60,-0x528(%ebp)
40afa8:	1f 40 00
40afab:	50                   	push   %eax
40afac:	8d 95 d8 fa ff ff    	lea    -0x528(%ebp),%edx
40afb2:	c7 85 54 fb ff ff 08 	movl   $0x8,-0x4ac(%ebp)
40afb9:	00 00 00
40afbc:	e8 86 d5 00 00       	call   0x418547
40afc1:	85 c0                	test   %eax,%eax
40afc3:	79 4c                	jns    0x40b011
40afc5:	8b 15 00 b0 42 00    	mov    0x42b000,%edx
40afcb:	81 fa 00 b0 42 00    	cmp    $0x42b000,%edx
40afd1:	74 37                	je     0x40b00a
40afd3:	f6 42 1c 01          	testb  $0x1,0x1c(%edx)
40afd7:	74 31                	je     0x40b00a
40afd9:	50                   	push   %eax
40afda:	ff 72 14             	push   0x14(%edx)
40afdd:	ff 72 10             	push   0x10(%edx)
40afe0:	6a 61                	push   $0x61
40afe2:	eb 1b                	jmp    0x40afff
40afe4:	a1 00 b0 42 00       	mov    0x42b000,%eax
40afe9:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40afee:	74 1a                	je     0x40b00a
40aff0:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40aff4:	74 14                	je     0x40b00a
40aff6:	51                   	push   %ecx
40aff7:	ff 70 14             	push   0x14(%eax)
40affa:	ff 70 10             	push   0x10(%eax)
40affd:	6a 62                	push   $0x62
40afff:	ba e0 21 40 00       	mov    $0x4021e0,%edx
40b004:	59                   	pop    %ecx
40b005:	e8 c4 c3 ff ff       	call   0x4073ce
40b00a:	8b ce                	mov    %esi,%ecx
40b00c:	e8 52 d7 00 00       	call   0x418763
40b011:	83 bd 44 fa ff ff 00 	cmpl   $0x0,-0x5bc(%ebp)
40b018:	74 4f                	je     0x40b069
40b01a:	ff b5 58 fa ff ff    	push   -0x5a8(%ebp)
40b020:	8d 4f 48             	lea    0x48(%edi),%ecx
40b023:	e8 90 10 00 00       	call   0x40c0b8
40b028:	8b f0                	mov    %eax,%esi
40b02a:	85 f6                	test   %esi,%esi
40b02c:	79 27                	jns    0x40b055
40b02e:	a1 00 b0 42 00       	mov    0x42b000,%eax
40b033:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40b038:	0f 84 38 01 00 00    	je     0x40b176
40b03e:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40b042:	0f 84 2e 01 00 00    	je     0x40b176
40b048:	ff 70 14             	push   0x14(%eax)
40b04b:	ff 70 10             	push   0x10(%eax)
40b04e:	6a 63                	push   $0x63
40b050:	e9 16 01 00 00       	jmp    0x40b16b
40b055:	8b bd d4 fa ff ff    	mov    -0x52c(%ebp),%edi
40b05b:	8d 9d 5c fa ff ff    	lea    -0x5a4(%ebp),%ebx
40b061:	89 bd 50 fa ff ff    	mov    %edi,-0x5b0(%ebp)
40b067:	eb 06                	jmp    0x40b06f
40b069:	8b bd 50 fa ff ff    	mov    -0x5b0(%ebp),%edi
40b06f:	8d 85 4c fa ff ff    	lea    -0x5b4(%ebp),%eax
40b075:	50                   	push   %eax
40b076:	ff b5 3c fa ff ff    	push   -0x5c4(%ebp)
40b07c:	8b 85 48 fa ff ff    	mov    -0x5b8(%ebp),%eax
40b082:	6a 02                	push   $0x2
40b084:	ff 30                	push   (%eax)
40b086:	ff 15 b0 c4 42 00    	call   *0x42c4b0
40b08c:	8b f0                	mov    %eax,%esi
40b08e:	85 f6                	test   %esi,%esi
40b090:	0f 88 bb 00 00 00    	js     0x40b151
40b096:	83 bd 4c fa ff ff 00 	cmpl   $0x0,-0x5b4(%ebp)
40b09d:	0f 84 ae 00 00 00    	je     0x40b151
40b0a3:	ff b5 54 fa ff ff    	push   -0x5ac(%ebp)
40b0a9:	ff b5 4c fa ff ff    	push   -0x5b4(%ebp)
40b0af:	ff 15 90 c4 42 00    	call   *0x42c490
40b0b5:	8b 85 4c fa ff ff    	mov    -0x5b4(%ebp),%eax
40b0bb:	89 85 48 fa ff ff    	mov    %eax,-0x5b8(%ebp)
40b0c1:	85 c0                	test   %eax,%eax
40b0c3:	74 5f                	je     0x40b124
40b0c5:	85 ff                	test   %edi,%edi
40b0c7:	74 5b                	je     0x40b124
40b0c9:	33 ff                	xor    %edi,%edi
40b0cb:	39 bd 50 fa ff ff    	cmp    %edi,-0x5b0(%ebp)
40b0d1:	76 25                	jbe    0x40b0f8
40b0d3:	ff 73 04             	push   0x4(%ebx)
40b0d6:	ff 33                	push   (%ebx)
40b0d8:	57                   	push   %edi
40b0d9:	50                   	push   %eax
40b0da:	ff 15 98 c4 42 00    	call   *0x42c498
40b0e0:	8b f0                	mov    %eax,%esi
40b0e2:	85 f6                	test   %esi,%esi
40b0e4:	78 16                	js     0x40b0fc
40b0e6:	8b 85 48 fa ff ff    	mov    -0x5b8(%ebp),%eax
40b0ec:	47                   	inc    %edi
40b0ed:	83 c3 0c             	add    $0xc,%ebx
40b0f0:	3b bd 50 fa ff ff    	cmp    -0x5b0(%ebp),%edi
40b0f6:	72 db                	jb     0x40b0d3
40b0f8:	33 f6                	xor    %esi,%esi
40b0fa:	eb 2d                	jmp    0x40b129
40b0fc:	a1 00 b0 42 00       	mov    0x42b000,%eax
40b101:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40b106:	74 26                	je     0x40b12e
40b108:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40b10c:	74 20                	je     0x40b12e
40b10e:	56                   	push   %esi
40b10f:	ff 70 14             	push   0x14(%eax)
40b112:	ba e0 21 40 00       	mov    $0x4021e0,%edx
40b117:	ff 70 10             	push   0x10(%eax)
40b11a:	6a 5c                	push   $0x5c
40b11c:	59                   	pop    %ecx
40b11d:	e8 ac c2 ff ff       	call   0x4073ce
40b122:	eb 05                	jmp    0x40b129
40b124:	be 57 00 07 80       	mov    $0x80070057,%esi
40b129:	a1 00 b0 42 00       	mov    0x42b000,%eax
40b12e:	85 f6                	test   %esi,%esi
40b130:	79 1b                	jns    0x40b14d
40b132:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40b137:	74 3d                	je     0x40b176
40b139:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40b13d:	74 37                	je     0x40b176
40b13f:	56                   	push   %esi
40b140:	ff 70 14             	push   0x14(%eax)
40b143:	ff 70 10             	push   0x10(%eax)
40b146:	6a 65                	push   $0x65
40b148:	e9 7d fc ff ff       	jmp    0x40adca
40b14d:	33 f6                	xor    %esi,%esi
40b14f:	eb 25                	jmp    0x40b176
40b151:	a1 00 b0 42 00       	mov    0x42b000,%eax
40b156:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40b15b:	74 19                	je     0x40b176
40b15d:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40b161:	74 13                	je     0x40b176
40b163:	ff 70 14             	push   0x14(%eax)
40b166:	ff 70 10             	push   0x10(%eax)
40b169:	6a 64                	push   $0x64
40b16b:	ba e0 21 40 00       	mov    $0x4021e0,%edx
40b170:	59                   	pop    %ecx
40b171:	e8 3a c2 ff ff       	call   0x4073b0
40b176:	8b 85 40 fa ff ff    	mov    -0x5c0(%ebp),%eax
40b17c:	85 c0                	test   %eax,%eax
40b17e:	74 07                	je     0x40b187
40b180:	50                   	push   %eax
40b181:	ff 15 30 c2 42 00    	call   *0x42c230
40b187:	85 f6                	test   %esi,%esi
40b189:	78 0e                	js     0x40b199
40b18b:	8b 8d 38 fa ff ff    	mov    -0x5c8(%ebp),%ecx
40b191:	8b 85 4c fa ff ff    	mov    -0x5b4(%ebp),%eax
40b197:	89 01                	mov    %eax,(%ecx)
40b199:	83 bd 54 fa ff ff 00 	cmpl   $0x0,-0x5ac(%ebp)
40b1a0:	74 13                	je     0x40b1b5
40b1a2:	ff b5 54 fa ff ff    	push   -0x5ac(%ebp)
40b1a8:	ff 15 8c c4 42 00    	call   *0x42c48c
40b1ae:	83 a5 54 fa ff ff 00 	andl   $0x0,-0x5ac(%ebp)
40b1b5:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b1b9:	8d 85 30 ff ff ff    	lea    -0xd0(%ebp),%eax
40b1bf:	68 50 79 40 00       	push   $0x407950
40b1c4:	6a 08                	push   $0x8
40b1c6:	6a 0c                	push   $0xc
40b1c8:	50                   	push   %eax
40b1c9:	e8 0c cc 01 00       	call   0x427dda
40b1ce:	8b c6                	mov    %esi,%eax
40b1d0:	e8 75 ce 01 00       	call   0x42804a
40b1d5:	c2 08 00             	ret    $0x8
40b1d8:	8b ff                	mov    %edi,%edi
40b1da:	55                   	push   %ebp
40b1db:	8b ec                	mov    %esp,%ebp
40b1dd:	51                   	push   %ecx
40b1de:	56                   	push   %esi
40b1df:	57                   	push   %edi
40b1e0:	33 ff                	xor    %edi,%edi
40b1e2:	8b f1                	mov    %ecx,%esi
40b1e4:	39 7d 08             	cmp    %edi,0x8(%ebp)
40b1e7:	75 2c                	jne    0x40b215
40b1e9:	a1 00 b0 42 00       	mov    0x42b000,%eax
40b1ee:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
40b1f3:	74 19                	je     0x40b20e
40b1f5:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
40b1f9:	74 13                	je     0x40b20e
40b1fb:	ff 70 14             	push   0x14(%eax)
40b1fe:	ba e0 21 40 00       	mov    $0x4021e0,%edx
40b203:	ff 70 10             	push   0x10(%eax)
40b206:	6a 66                	push   $0x66
40b208:	59                   	pop    %ecx