44ed50:	8b 16                	mov    (%esi),%edx
44ed52:	33 db                	xor    %ebx,%ebx
44ed54:	56                   	push   %esi
44ed55:	89 5d e8             	mov    %ebx,-0x18(%ebp)
44ed58:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
44ed5b:	89 5d e0             	mov    %ebx,-0x20(%ebp)
44ed5e:	89 5d dc             	mov    %ebx,-0x24(%ebp)
44ed61:	89 5d d8             	mov    %ebx,-0x28(%ebp)
44ed64:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
44ed67:	89 5d d0             	mov    %ebx,-0x30(%ebp)
44ed6a:	89 5d c0             	mov    %ebx,-0x40(%ebp)
44ed6d:	ff 92 04 03 00 00    	call   *0x304(%edx)
44ed73:	50                   	push   %eax
44ed74:	8d 45 dc             	lea    -0x24(%ebp),%eax
44ed77:	50                   	push   %eax
44ed78:	ff 15 d0 10 40 00    	call   *0x4010d0
44ed7e:	8b f8                	mov    %eax,%edi
44ed80:	8d 55 e0             	lea    -0x20(%ebp),%edx
44ed83:	52                   	push   %edx
44ed84:	57                   	push   %edi
44ed85:	8b 0f                	mov    (%edi),%ecx
44ed87:	ff 91 f8 00 00 00    	call   *0xf8(%ecx)
44ed8d:	3b c3                	cmp    %ebx,%eax
44ed8f:	db e2                	fnclex
44ed91:	7d 12                	jge    0x44eda5
44ed93:	68 f8 00 00 00       	push   $0xf8
44ed98:	68 90 7d 40 00       	push   $0x407d90
44ed9d:	57                   	push   %edi
44ed9e:	50                   	push   %eax
44ed9f:	ff 15 bc 10 40 00    	call   *0x4010bc
44eda5:	8b 55 e0             	mov    -0x20(%ebp),%edx
44eda8:	8d 4e 48             	lea    0x48(%esi),%ecx
44edab:	ff 15 98 11 40 00    	call   *0x401198
44edb1:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44edb4:	ff 15 00 12 40 00    	call   *0x401200
44edba:	8b 1d fc 11 40 00    	mov    0x4011fc,%ebx
44edc0:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44edc3:	ff d3                	call   *%ebx
44edc5:	8b 06                	mov    (%esi),%eax
44edc7:	56                   	push   %esi
44edc8:	ff 90 08 03 00 00    	call   *0x308(%eax)
44edce:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44edd1:	50                   	push   %eax
44edd2:	51                   	push   %ecx
44edd3:	ff 15 d0 10 40 00    	call   *0x4010d0
44edd9:	8b f8                	mov    %eax,%edi
44eddb:	68 44 85 40 00       	push   $0x408544
44ede0:	57                   	push   %edi
44ede1:	8b 17                	mov    (%edi),%edx
44ede3:	ff 92 a4 00 00 00    	call   *0xa4(%edx)
44ede9:	85 c0                	test   %eax,%eax
44edeb:	db e2                	fnclex
44eded:	7d 12                	jge    0x44ee01
44edef:	68 a4 00 00 00       	push   $0xa4
44edf4:	68 48 85 40 00       	push   $0x408548
44edf9:	57                   	push   %edi
44edfa:	50                   	push   %eax
44edfb:	ff 15 bc 10 40 00    	call   *0x4010bc
44ee01:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44ee04:	ff d3                	call   *%ebx
44ee06:	8b 06                	mov    (%esi),%eax
44ee08:	56                   	push   %esi
44ee09:	ff 90 00 03 00 00    	call   *0x300(%eax)
44ee0f:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44ee12:	50                   	push   %eax
44ee13:	51                   	push   %ecx
44ee14:	ff 15 d0 10 40 00    	call   *0x4010d0
44ee1a:	8b f8                	mov    %eax,%edi
44ee1c:	68 44 85 40 00       	push   $0x408544
44ee21:	57                   	push   %edi
44ee22:	8b 17                	mov    (%edi),%edx
44ee24:	ff 92 a4 00 00 00    	call   *0xa4(%edx)
44ee2a:	85 c0                	test   %eax,%eax
44ee2c:	db e2                	fnclex
44ee2e:	7d 12                	jge    0x44ee42
44ee30:	68 a4 00 00 00       	push   $0xa4
44ee35:	68 48 85 40 00       	push   $0x408548
44ee3a:	57                   	push   %edi
44ee3b:	50                   	push   %eax
44ee3c:	ff 15 bc 10 40 00    	call   *0x4010bc
44ee42:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44ee45:	ff d3                	call   *%ebx
44ee47:	8b 46 48             	mov    0x48(%esi),%eax
44ee4a:	8b 3d b4 10 40 00    	mov    0x4010b4,%edi
44ee50:	68 5c 85 40 00       	push   $0x40855c
44ee55:	50                   	push   %eax
44ee56:	ff d7                	call   *%edi
44ee58:	8b d0                	mov    %eax,%edx
44ee5a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44ee5d:	ff 15 d8 11 40 00    	call   *0x4011d8
44ee63:	50                   	push   %eax
44ee64:	68 08 73 40 00       	push   $0x407308
44ee69:	ff d7                	call   *%edi
44ee6b:	8b d0                	mov    %eax,%edx
44ee6d:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
44ee70:	ff 15 d8 11 40 00    	call   *0x4011d8
44ee76:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44ee79:	ff 15 00 12 40 00    	call   *0x401200
44ee7f:	8b 0e                	mov    (%esi),%ecx
44ee81:	56                   	push   %esi
44ee82:	ff 91 14 03 00 00    	call   *0x314(%ecx)
44ee88:	8d 55 dc             	lea    -0x24(%ebp),%edx
44ee8b:	50                   	push   %eax
44ee8c:	52                   	push   %edx
44ee8d:	ff 15 d0 10 40 00    	call   *0x4010d0
44ee93:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
44ee96:	8b f8                	mov    %eax,%edi
44ee98:	51                   	push   %ecx
44ee99:	57                   	push   %edi
44ee9a:	8b 07                	mov    (%edi),%eax
44ee9c:	ff 90 0c 01 00 00    	call   *0x10c(%eax)
44eea2:	85 c0                	test   %eax,%eax
44eea4:	db e2                	fnclex
44eea6:	7d 12                	jge    0x44eeba
44eea8:	68 0c 01 00 00       	push   $0x10c
44eead:	68 50 7d 40 00       	push   $0x407d50
44eeb2:	57                   	push   %edi
44eeb3:	50                   	push   %eax
44eeb4:	ff 15 bc 10 40 00    	call   *0x4010bc
44eeba:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44eebd:	ff d3                	call   *%ebx
44eebf:	8b 16                	mov    (%esi),%edx
44eec1:	56                   	push   %esi
44eec2:	ff 92 14 03 00 00    	call   *0x314(%edx)
44eec8:	50                   	push   %eax
44eec9:	8d 45 dc             	lea    -0x24(%ebp),%eax
44eecc:	50                   	push   %eax
44eecd:	ff 15 d0 10 40 00    	call   *0x4010d0
44eed3:	8b f8                	mov    %eax,%edi
44eed5:	57                   	push   %edi
44eed6:	8b 0f                	mov    (%edi),%ecx
44eed8:	ff 91 b8 01 00 00    	call   *0x1b8(%ecx)
44eede:	85 c0                	test   %eax,%eax
44eee0:	db e2                	fnclex
44eee2:	7d 16                	jge    0x44eefa
44eee4:	68 b8 01 00 00       	push   $0x1b8
44eee9:	68 50 7d 40 00       	push   $0x407d50
44eeee:	57                   	push   %edi
44eeef:	8b 3d bc 10 40 00    	mov    0x4010bc,%edi
44eef5:	50                   	push   %eax
44eef6:	ff d7                	call   *%edi
44eef8:	eb 06                	jmp    0x44ef00
44eefa:	8b 3d bc 10 40 00    	mov    0x4010bc,%edi
44ef00:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44ef03:	ff d3                	call   *%ebx
44ef05:	8b 16                	mov    (%esi),%edx
44ef07:	56                   	push   %esi
44ef08:	ff 92 14 03 00 00    	call   *0x314(%edx)
44ef0e:	50                   	push   %eax
44ef0f:	8d 45 dc             	lea    -0x24(%ebp),%eax
44ef12:	50                   	push   %eax
44ef13:	ff 15 d0 10 40 00    	call   *0x4010d0
44ef19:	8b d8                	mov    %eax,%ebx
44ef1b:	8d 55 d8             	lea    -0x28(%ebp),%edx
44ef1e:	52                   	push   %edx
44ef1f:	53                   	push   %ebx
44ef20:	8b 0b                	mov    (%ebx),%ecx
44ef22:	ff 91 f0 00 00 00    	call   *0xf0(%ecx)
44ef28:	85 c0                	test   %eax,%eax
44ef2a:	db e2                	fnclex
44ef2c:	7d 0e                	jge    0x44ef3c
44ef2e:	68 f0 00 00 00       	push   $0xf0
44ef33:	68 50 7d 40 00       	push   $0x407d50
44ef38:	53                   	push   %ebx
44ef39:	50                   	push   %eax
44ef3a:	ff d7                	call   *%edi
44ef3c:	8b 45 d8             	mov    -0x28(%ebp),%eax
44ef3f:	8d 55 d4             	lea    -0x2c(%ebp),%edx
44ef42:	52                   	push   %edx
44ef43:	50                   	push   %eax
44ef44:	8b 08                	mov    (%eax),%ecx
44ef46:	8b d8                	mov    %eax,%ebx
44ef48:	ff 91 b4 00 00 00    	call   *0xb4(%ecx)
44ef4e:	85 c0                	test   %eax,%eax
44ef50:	db e2                	fnclex
44ef52:	7d 0e                	jge    0x44ef62
44ef54:	68 b4 00 00 00       	push   $0xb4
44ef59:	68 60 7d 40 00       	push   $0x407d60
44ef5e:	53                   	push   %ebx
44ef5f:	50                   	push   %eax
44ef60:	ff d7                	call   *%edi
44ef62:	8d 5d d0             	lea    -0x30(%ebp),%ebx
44ef65:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44ef68:	53                   	push   %ebx
44ef69:	ba 08 00 00 00       	mov    $0x8,%edx
44ef6e:	83 ec 10             	sub    $0x10,%esp
44ef71:	8b 38                	mov    (%eax),%edi
44ef73:	8b dc                	mov    %esp,%ebx
44ef75:	b9 58 87 40 00       	mov    $0x408758,%ecx
44ef7a:	50                   	push   %eax
44ef7b:	89 45 9c             	mov    %eax,-0x64(%ebp)
44ef7e:	89 13                	mov    %edx,(%ebx)
44ef80:	8b 55 b4             	mov    -0x4c(%ebp),%edx
44ef83:	89 53 04             	mov    %edx,0x4(%ebx)
44ef86:	89 4b 08             	mov    %ecx,0x8(%ebx)
44ef89:	8b 4d bc             	mov    -0x44(%ebp),%ecx
44ef8c:	89 4b 0c             	mov    %ecx,0xc(%ebx)
44ef8f:	ff 57 30             	call   *0x30(%edi)
44ef92:	85 c0                	test   %eax,%eax
44ef94:	db e2                	fnclex
44ef96:	7d 12                	jge    0x44efaa
44ef98:	8b 55 9c             	mov    -0x64(%ebp),%edx
44ef9b:	6a 30                	push   $0x30
44ef9d:	68 70 7d 40 00       	push   $0x407d70
44efa2:	52                   	push   %edx
44efa3:	50                   	push   %eax
44efa4:	ff 15 bc 10 40 00    	call   *0x4010bc
44efaa:	8b 45 d0             	mov    -0x30(%ebp),%eax
44efad:	8d 55 c0             	lea    -0x40(%ebp),%edx
44efb0:	52                   	push   %edx
44efb1:	50                   	push   %eax
44efb2:	8b 08                	mov    (%eax),%ecx
44efb4:	8b f8                	mov    %eax,%edi
44efb6:	ff 51 44             	call   *0x44(%ecx)
44efb9:	85 c0                	test   %eax,%eax
44efbb:	db e2                	fnclex
44efbd:	7d 0f                	jge    0x44efce
44efbf:	6a 44                	push   $0x44
44efc1:	68 80 7d 40 00       	push   $0x407d80
44efc6:	57                   	push   %edi
44efc7:	50                   	push   %eax
44efc8:	ff 15 bc 10 40 00    	call   *0x4010bc
44efce:	8d 45 c0             	lea    -0x40(%ebp),%eax
44efd1:	8d 5e 34             	lea    0x34(%esi),%ebx
44efd4:	50                   	push   %eax
44efd5:	ff 15 9c 10 40 00    	call   *0x40109c
44efdb:	8b d0                	mov    %eax,%edx
44efdd:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44efe0:	ff 15 d8 11 40 00    	call   *0x4011d8
44efe6:	50                   	push   %eax
44efe7:	53                   	push   %ebx
44efe8:	6a 0a                	push   $0xa
44efea:	ff 15 b8 10 40 00    	call   *0x4010b8
44eff0:	8d 4d e0             	lea    -0x20(%ebp),%ecx
44eff3:	ff 15 00 12 40 00    	call   *0x401200
44eff9:	8d 4d d0             	lea    -0x30(%ebp),%ecx
44effc:	8d 55 d4             	lea    -0x2c(%ebp),%edx
44efff:	51                   	push   %ecx
44f000:	8d 45 d8             	lea    -0x28(%ebp),%eax
44f003:	52                   	push   %edx
44f004:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44f007:	50                   	push   %eax
44f008:	51                   	push   %ecx
44f009:	6a 04                	push   $0x4
44f00b:	ff 15 ac 10 40 00    	call   *0x4010ac
44f011:	83 c4 14             	add    $0x14,%esp
44f014:	8d 4d c0             	lea    -0x40(%ebp),%ecx
44f017:	ff 15 98 10 40 00    	call   *0x401098
44f01d:	8b 16                	mov    (%esi),%edx
44f01f:	56                   	push   %esi
44f020:	ff 92 14 03 00 00    	call   *0x314(%edx)
44f026:	50                   	push   %eax
44f027:	8d 45 dc             	lea    -0x24(%ebp),%eax
44f02a:	50                   	push   %eax
44f02b:	ff 15 d0 10 40 00    	call   *0x4010d0
44f031:	8b f8                	mov    %eax,%edi
44f033:	8d 55 d8             	lea    -0x28(%ebp),%edx
44f036:	52                   	push   %edx
44f037:	57                   	push   %edi
44f038:	8b 0f                	mov    (%edi),%ecx
44f03a:	ff 91 f0 00 00 00    	call   *0xf0(%ecx)
44f040:	85 c0                	test   %eax,%eax
44f042:	db e2                	fnclex
44f044:	7d 12                	jge    0x44f058
44f046:	68 f0 00 00 00       	push   $0xf0
44f04b:	68 50 7d 40 00       	push   $0x407d50
44f050:	57                   	push   %edi
44f051:	50                   	push   %eax
44f052:	ff 15 bc 10 40 00    	call   *0x4010bc
44f058:	8b 45 d8             	mov    -0x28(%ebp),%eax
44f05b:	8d 55 d4             	lea    -0x2c(%ebp),%edx
44f05e:	52                   	push   %edx
44f05f:	50                   	push   %eax
44f060:	8b 08                	mov    (%eax),%ecx
44f062:	8b f8                	mov    %eax,%edi
44f064:	ff 91 b4 00 00 00    	call   *0xb4(%ecx)
44f06a:	85 c0                	test   %eax,%eax
44f06c:	db e2                	fnclex
44f06e:	7d 12                	jge    0x44f082
44f070:	68 b4 00 00 00       	push   $0xb4
44f075:	68 60 7d 40 00       	push   $0x407d60
44f07a:	57                   	push   %edi
44f07b:	50                   	push   %eax
44f07c:	ff 15 bc 10 40 00    	call   *0x4010bc
44f082:	8d 7d d0             	lea    -0x30(%ebp),%edi
44f085:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44f088:	57                   	push   %edi
44f089:	b9 08 00 00 00       	mov    $0x8,%ecx
44f08e:	83 ec 10             	sub    $0x10,%esp
44f091:	8b 10                	mov    (%eax),%edx
44f093:	8b fc                	mov    %esp,%edi
44f095:	89 45 9c             	mov    %eax,-0x64(%ebp)
44f098:	50                   	push   %eax
44f099:	89 0f                	mov    %ecx,(%edi)
44f09b:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
44f09e:	89 4f 04             	mov    %ecx,0x4(%edi)
44f0a1:	b9 b8 85 40 00       	mov    $0x4085b8,%ecx
44f0a6:	89 4f 08             	mov    %ecx,0x8(%edi)
44f0a9:	8b 4d bc             	mov    -0x44(%ebp),%ecx
44f0ac:	89 4f 0c             	mov    %ecx,0xc(%edi)
44f0af:	ff 52 30             	call   *0x30(%edx)
44f0b2:	85 c0                	test   %eax,%eax
44f0b4:	db e2                	fnclex
44f0b6:	7d 12                	jge    0x44f0ca
44f0b8:	8b 55 9c             	mov    -0x64(%ebp),%edx
44f0bb:	6a 30                	push   $0x30
44f0bd:	68 70 7d 40 00       	push   $0x407d70
44f0c2:	52                   	push   %edx
44f0c3:	50                   	push   %eax
44f0c4:	ff 15 bc 10 40 00    	call   *0x4010bc
44f0ca:	8b 45 d0             	mov    -0x30(%ebp),%eax
44f0cd:	8d 55 c0             	lea    -0x40(%ebp),%edx
44f0d0:	52                   	push   %edx
44f0d1:	50                   	push   %eax
44f0d2:	8b 08                	mov    (%eax),%ecx
44f0d4:	8b f8                	mov    %eax,%edi
44f0d6:	ff 51 44             	call   *0x44(%ecx)
44f0d9:	85 c0                	test   %eax,%eax
44f0db:	db e2                	fnclex
44f0dd:	7d 0f                	jge    0x44f0ee
44f0df:	6a 44                	push   $0x44
44f0e1:	68 80 7d 40 00       	push   $0x407d80
44f0e6:	57                   	push   %edi
44f0e7:	50                   	push   %eax
44f0e8:	ff 15 bc 10 40 00    	call   *0x4010bc
44f0ee:	8d 45 c0             	lea    -0x40(%ebp),%eax
44f0f1:	50                   	push   %eax
44f0f2:	ff 15 9c 10 40 00    	call   *0x40109c
44f0f8:	8b d0                	mov    %eax,%edx
44f0fa:	8d 4d e8             	lea    -0x18(%ebp),%ecx
44f0fd:	ff 15 d8 11 40 00    	call   *0x4011d8
44f103:	8d 4d d0             	lea    -0x30(%ebp),%ecx
44f106:	8d 55 d4             	lea    -0x2c(%ebp),%edx
44f109:	51                   	push   %ecx
44f10a:	8d 45 d8             	lea    -0x28(%ebp),%eax
44f10d:	52                   	push   %edx
44f10e:	8d 4d dc             	lea    -0x24(%ebp),%ecx
44f111:	50                   	push   %eax
44f112:	51                   	push   %ecx
44f113:	6a 04                	push   $0x4
44f115:	ff 15 ac 10 40 00    	call   *0x4010ac
44f11b:	83 c4 14             	add    $0x14,%esp
44f11e:	8d 4d c0             	lea    -0x40(%ebp),%ecx
44f121:	ff 15 98 10 40 00    	call   *0x401098
44f127:	8b 16                	mov    (%esi),%edx
44f129:	56                   	push   %esi
44f12a:	ff 92 08 03 00 00    	call   *0x308(%edx)
44f130:	50                   	push   %eax
44f131:	8d 45 dc             	lea    -0x24(%ebp),%eax
44f134:	50                   	push   %eax