43fd3d:	3b c3                	cmp    %ebx,%eax
43fd3f:	74 20                	je     0x43fd61
43fd41:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43fd45:	74 1a                	je     0x43fd61
43fd47:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43fd4b:	72 14                	jb     0x43fd61
43fd4d:	56                   	push   %esi
43fd4e:	ff 70 14             	push   0x14(%eax)
43fd51:	ba 8c b3 40 00       	mov    $0x40b38c,%edx
43fd56:	ff 70 10             	push   0x10(%eax)
43fd59:	6a 2e                	push   $0x2e
43fd5b:	59                   	pop    %ecx
43fd5c:	e8 65 0a ff ff       	call   0x4307c6
43fd61:	5f                   	pop    %edi
43fd62:	8b c6                	mov    %esi,%eax
43fd64:	5e                   	pop    %esi
43fd65:	5b                   	pop    %ebx
43fd66:	5d                   	pop    %ebp
43fd67:	c2 14 00             	ret    $0x14
43fd6a:	cc                   	int3
43fd6b:	cc                   	int3
43fd6c:	cc                   	int3
43fd6d:	cc                   	int3
43fd6e:	cc                   	int3
43fd6f:	cc                   	int3
43fd70:	8b ff                	mov    %edi,%edi
43fd72:	55                   	push   %ebp
43fd73:	8b ec                	mov    %esp,%ebp
43fd75:	53                   	push   %ebx
43fd76:	56                   	push   %esi
43fd77:	57                   	push   %edi
43fd78:	a1 00 f0 44 00       	mov    0x44f000,%eax
43fd7d:	bb 00 f0 44 00       	mov    $0x44f000,%ebx
43fd82:	8b 7d 08             	mov    0x8(%ebp),%edi
43fd85:	3b c3                	cmp    %ebx,%eax
43fd87:	74 27                	je     0x43fdb0
43fd89:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43fd8d:	74 21                	je     0x43fdb0
43fd8f:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
43fd93:	72 1b                	jb     0x43fdb0
43fd95:	ff 75 18             	push   0x18(%ebp)
43fd98:	ff 75 14             	push   0x14(%ebp)
43fd9b:	57                   	push   %edi
43fd9c:	ff 75 10             	push   0x10(%ebp)
43fd9f:	ff 75 0c             	push   0xc(%ebp)
43fda2:	ff 70 14             	push   0x14(%eax)
43fda5:	ff 70 10             	push   0x10(%eax)
43fda8:	6a 31                	push   $0x31
43fdaa:	59                   	pop    %ecx
43fdab:	e8 e1 01 00 00       	call   0x43ff91
43fdb0:	ff 75 18             	push   0x18(%ebp)
43fdb3:	ff 75 14             	push   0x14(%ebp)
43fdb6:	ff 75 10             	push   0x10(%ebp)
43fdb9:	ff 75 0c             	push   0xc(%ebp)
43fdbc:	57                   	push   %edi
43fdbd:	e8 3e d2 fd ff       	call   0x41d000
43fdc2:	8b 4f 64             	mov    0x64(%edi),%ecx
43fdc5:	8b f0                	mov    %eax,%esi
43fdc7:	85 c9                	test   %ecx,%ecx
43fdc9:	74 4a                	je     0x43fe15
43fdcb:	f7 45 0c ff e0 ff ff 	testl  $0xffffe0ff,0xc(%ebp)
43fdd2:	75 41                	jne    0x43fe15
43fdd4:	ff 75 18             	push   0x18(%ebp)
43fdd7:	8b 81 34 01 00 00    	mov    0x134(%ecx),%eax
43fddd:	ff 75 14             	push   0x14(%ebp)
43fde0:	ff 75 10             	push   0x10(%ebp)
43fde3:	ff 77 60             	push   0x60(%edi)
43fde6:	ff 77 5c             	push   0x5c(%edi)
43fde9:	ff b1 44 01 00 00    	push   0x144(%ecx)
43fdef:	ff b1 38 01 00 00    	push   0x138(%ecx)
43fdf5:	ff b1 3c 01 00 00    	push   0x13c(%ecx)
43fdfb:	ff 70 38             	push   0x38(%eax)
43fdfe:	ff b1 40 01 00 00    	push   0x140(%ecx)
43fe04:	6a 01                	push   $0x1
43fe06:	ff 35 d8 09 45 00    	push   0x4509d8
43fe0c:	ff 15 24 10 45 00    	call   *0x451024
43fe12:	83 c4 30             	add    $0x30,%esp
43fe15:	85 f6                	test   %esi,%esi
43fe17:	79 0f                	jns    0x43fe28
43fe19:	56                   	push   %esi
43fe1a:	ff 15 a0 12 45 00    	call   *0x4512a0
43fe20:	8b c8                	mov    %eax,%ecx
43fe22:	ff 15 a4 12 45 00    	call   *0x4512a4
43fe28:	a1 00 f0 44 00       	mov    0x44f000,%eax
43fe2d:	3b c3                	cmp    %ebx,%eax
43fe2f:	74 20                	je     0x43fe51
43fe31:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43fe35:	74 1a                	je     0x43fe51
43fe37:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43fe3b:	72 14                	jb     0x43fe51
43fe3d:	56                   	push   %esi
43fe3e:	ff 70 14             	push   0x14(%eax)
43fe41:	ba 8c b3 40 00       	mov    $0x40b38c,%edx
43fe46:	ff 70 10             	push   0x10(%eax)
43fe49:	6a 32                	push   $0x32
43fe4b:	59                   	pop    %ecx
43fe4c:	e8 75 09 ff ff       	call   0x4307c6
43fe51:	5f                   	pop    %edi
43fe52:	8b c6                	mov    %esi,%eax
43fe54:	5e                   	pop    %esi
43fe55:	5b                   	pop    %ebx
43fe56:	5d                   	pop    %ebp
43fe57:	c2 14 00             	ret    $0x14
43fe5a:	cc                   	int3
43fe5b:	cc                   	int3
43fe5c:	cc                   	int3
43fe5d:	cc                   	int3
43fe5e:	cc                   	int3
43fe5f:	cc                   	int3
43fe60:	8b ff                	mov    %edi,%edi
43fe62:	55                   	push   %ebp
43fe63:	8b ec                	mov    %esp,%ebp
43fe65:	53                   	push   %ebx
43fe66:	56                   	push   %esi
43fe67:	57                   	push   %edi
43fe68:	a1 00 f0 44 00       	mov    0x44f000,%eax
43fe6d:	bb 00 f0 44 00       	mov    $0x44f000,%ebx
43fe72:	8b 7d 08             	mov    0x8(%ebp),%edi
43fe75:	3b c3                	cmp    %ebx,%eax
43fe77:	74 27                	je     0x43fea0
43fe79:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43fe7d:	74 21                	je     0x43fea0
43fe7f:	80 78 19 05          	cmpb   $0x5,0x19(%eax)
43fe83:	72 1b                	jb     0x43fea0
43fe85:	ff 75 18             	push   0x18(%ebp)
43fe88:	ff 75 14             	push   0x14(%ebp)
43fe8b:	57                   	push   %edi
43fe8c:	ff 75 10             	push   0x10(%ebp)
43fe8f:	ff 75 0c             	push   0xc(%ebp)
43fe92:	ff 70 14             	push   0x14(%eax)
43fe95:	ff 70 10             	push   0x10(%eax)
43fe98:	6a 33                	push   $0x33
43fe9a:	59                   	pop    %ecx
43fe9b:	e8 f1 00 00 00       	call   0x43ff91
43fea0:	ff 75 18             	push   0x18(%ebp)
43fea3:	ff 75 14             	push   0x14(%ebp)
43fea6:	ff 75 10             	push   0x10(%ebp)
43fea9:	ff 75 0c             	push   0xc(%ebp)
43feac:	57                   	push   %edi
43fead:	e8 4e d1 fd ff       	call   0x41d000
43feb2:	8b 4f 64             	mov    0x64(%edi),%ecx
43feb5:	8b f0                	mov    %eax,%esi
43feb7:	85 c9                	test   %ecx,%ecx
43feb9:	74 4a                	je     0x43ff05
43febb:	f7 45 0c ff e0 ff ff 	testl  $0xffffe0ff,0xc(%ebp)
43fec2:	75 41                	jne    0x43ff05
43fec4:	ff 75 18             	push   0x18(%ebp)
43fec7:	8b 81 34 01 00 00    	mov    0x134(%ecx),%eax
43fecd:	ff 75 14             	push   0x14(%ebp)
43fed0:	ff 75 10             	push   0x10(%ebp)
43fed3:	ff 77 60             	push   0x60(%edi)
43fed6:	ff 77 5c             	push   0x5c(%edi)
43fed9:	ff b1 44 01 00 00    	push   0x144(%ecx)
43fedf:	ff b1 38 01 00 00    	push   0x138(%ecx)
43fee5:	ff b1 3c 01 00 00    	push   0x13c(%ecx)
43feeb:	ff 70 38             	push   0x38(%eax)
43feee:	ff b1 40 01 00 00    	push   0x140(%ecx)
43fef4:	6a 01                	push   $0x1
43fef6:	ff 35 e4 09 45 00    	push   0x4509e4
43fefc:	ff 15 24 10 45 00    	call   *0x451024
43ff02:	83 c4 30             	add    $0x30,%esp
43ff05:	85 f6                	test   %esi,%esi
43ff07:	79 0f                	jns    0x43ff18
43ff09:	56                   	push   %esi
43ff0a:	ff 15 a0 12 45 00    	call   *0x4512a0
43ff10:	8b c8                	mov    %eax,%ecx
43ff12:	ff 15 a4 12 45 00    	call   *0x4512a4
43ff18:	a1 00 f0 44 00       	mov    0x44f000,%eax
43ff1d:	3b c3                	cmp    %ebx,%eax
43ff1f:	74 20                	je     0x43ff41
43ff21:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
43ff25:	74 1a                	je     0x43ff41
43ff27:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
43ff2b:	72 14                	jb     0x43ff41
43ff2d:	56                   	push   %esi
43ff2e:	ff 70 14             	push   0x14(%eax)
43ff31:	ba 8c b3 40 00       	mov    $0x40b38c,%edx
43ff36:	ff 70 10             	push   0x10(%eax)
43ff39:	6a 34                	push   $0x34
43ff3b:	59                   	pop    %ecx
43ff3c:	e8 85 08 ff ff       	call   0x4307c6
43ff41:	5f                   	pop    %edi
43ff42:	8b c6                	mov    %esi,%eax
43ff44:	5e                   	pop    %esi
43ff45:	5b                   	pop    %ebx
43ff46:	5d                   	pop    %ebp
43ff47:	c2 14 00             	ret    $0x14
43ff4a:	6a 00                	push   $0x0
43ff4c:	b8 fd 2c 42 00       	mov    $0x422cfd,%eax
43ff51:	e8 17 f7 fd ff       	call   0x41f66d
43ff56:	8b f9                	mov    %ecx,%edi
43ff58:	8b 47 04             	mov    0x4(%edi),%eax
43ff5b:	33 db                	xor    %ebx,%ebx
43ff5d:	8b cb                	mov    %ebx,%ecx
43ff5f:	85 c0                	test   %eax,%eax
43ff61:	74 13                	je     0x43ff76
43ff63:	8b 4f 18             	mov    0x18(%edi),%ecx
43ff66:	8b 30                	mov    (%eax),%esi
43ff68:	50                   	push   %eax
43ff69:	e8 bc 98 fd ff       	call   0x41982a
43ff6e:	8b c8                	mov    %eax,%ecx
43ff70:	8b c6                	mov    %esi,%eax
43ff72:	85 f6                	test   %esi,%esi
43ff74:	75 ed                	jne    0x43ff63
43ff76:	89 5f 14             	mov    %ebx,0x14(%edi)
43ff79:	8b c1                	mov    %ecx,%eax
43ff7b:	89 5f 10             	mov    %ebx,0x10(%edi)
43ff7e:	89 5f 04             	mov    %ebx,0x4(%edi)
43ff81:	89 1f                	mov    %ebx,(%edi)
43ff83:	89 5f 0c             	mov    %ebx,0xc(%edi)
43ff86:	89 5f 08             	mov    %ebx,0x8(%edi)
43ff89:	e8 ad f6 fd ff       	call   0x41f63b
43ff8e:	c2 04 00             	ret    $0x4
43ff91:	8b ff                	mov    %edi,%edi
43ff93:	55                   	push   %ebp
43ff94:	8b ec                	mov    %esp,%ebp
43ff96:	53                   	push   %ebx
43ff97:	56                   	push   %esi
43ff98:	8b 75 1c             	mov    0x1c(%ebp),%esi
43ff9b:	33 db                	xor    %ebx,%ebx
43ff9d:	57                   	push   %edi
43ff9e:	85 f6                	test   %esi,%esi
43ffa0:	74 1d                	je     0x43ffbf
43ffa2:	8b d6                	mov    %esi,%edx
43ffa4:	8d 7a 02             	lea    0x2(%edx),%edi
43ffa7:	66 8b 02             	mov    (%edx),%ax
43ffaa:	83 c2 02             	add    $0x2,%edx
43ffad:	66 3b c3             	cmp    %bx,%ax
43ffb0:	75 f5                	jne    0x43ffa7
43ffb2:	2b d7                	sub    %edi,%edx
43ffb4:	d1 fa                	sar    $1,%edx
43ffb6:	8d 14 55 02 00 00 00 	lea    0x2(,%edx,2),%edx
43ffbd:	eb 03                	jmp    0x43ffc2
43ffbf:	6a 0a                	push   $0xa
43ffc1:	5a                   	pop    %edx
43ffc2:	85 f6                	test   %esi,%esi
43ffc4:	75 05                	jne    0x43ffcb
43ffc6:	be 98 aa 40 00       	mov    $0x40aa98,%esi
43ffcb:	53                   	push   %ebx
43ffcc:	6a 04                	push   $0x4
43ffce:	5f                   	pop    %edi
43ffcf:	57                   	push   %edi
43ffd0:	8d 45 20             	lea    0x20(%ebp),%eax
43ffd3:	50                   	push   %eax
43ffd4:	52                   	push   %edx
43ffd5:	56                   	push   %esi
43ffd6:	57                   	push   %edi
43ffd7:	8d 45 18             	lea    0x18(%ebp),%eax
43ffda:	50                   	push   %eax
43ffdb:	57                   	push   %edi
43ffdc:	8d 45 14             	lea    0x14(%ebp),%eax
43ffdf:	50                   	push   %eax
43ffe0:	57                   	push   %edi
43ffe1:	8d 45 10             	lea    0x10(%ebp),%eax
43ffe4:	50                   	push   %eax
43ffe5:	51                   	push   %ecx
43ffe6:	68 8c b3 40 00       	push   $0x40b38c
43ffeb:	6a 2b                	push   $0x2b
43ffed:	ff 75 0c             	push   0xc(%ebp)
43fff0:	ff 75 08             	push   0x8(%ebp)
43fff3:	ff 15 94 12 45 00    	call   *0x451294
43fff9:	83 c4 40             	add    $0x40,%esp
43fffc:	5f                   	pop    %edi
43fffd:	5e                   	pop    %esi
43fffe:	5b                   	pop    %ebx
43ffff:	5d                   	pop    %ebp
440000:	c2 1c 00             	ret    $0x1c
440003:	8b ff                	mov    %edi,%edi
440005:	55                   	push   %ebp
440006:	8b ec                	mov    %esp,%ebp
440008:	57                   	push   %edi
440009:	8b f9                	mov    %ecx,%edi
44000b:	33 c0                	xor    %eax,%eax
44000d:	89 47 04             	mov    %eax,0x4(%edi)
440010:	89 47 08             	mov    %eax,0x8(%edi)
440013:	89 47 0c             	mov    %eax,0xc(%edi)
440016:	89 47 10             	mov    %eax,0x10(%edi)
440019:	8b 45 08             	mov    0x8(%ebp),%eax
44001c:	c7 07 d8 13 40 00    	movl   $0x4013d8,(%edi)
440022:	89 47 14             	mov    %eax,0x14(%edi)
440025:	f0 ff 05 74 0a 45 00 	lock incl 0x450a74
44002c:	f0 ff 05 7c 0b 45 00 	lock incl 0x450b7c
440033:	8b 4f 14             	mov    0x14(%edi),%ecx
440036:	85 c9                	test   %ecx,%ecx
440038:	74 12                	je     0x44004c
44003a:	8b 01                	mov    (%ecx),%eax
44003c:	56                   	push   %esi
44003d:	51                   	push   %ecx
44003e:	8b 70 04             	mov    0x4(%eax),%esi
440041:	8b ce                	mov    %esi,%ecx
440043:	ff 15 c4 12 45 00    	call   *0x4512c4
440049:	ff d6                	call   *%esi
44004b:	5e                   	pop    %esi
44004c:	8b c7                	mov    %edi,%eax
44004e:	5f                   	pop    %edi
44004f:	5d                   	pop    %ebp
440050:	c2 04 00             	ret    $0x4
440053:	cc                   	int3
440054:	cc                   	int3
440055:	cc                   	int3
440056:	cc                   	int3
440057:	cc                   	int3
440058:	cc                   	int3
440059:	cc                   	int3
44005a:	cc                   	int3
44005b:	cc                   	int3
44005c:	cc                   	int3
44005d:	cc                   	int3
44005e:	cc                   	int3
44005f:	cc                   	int3
440060:	8b ff                	mov    %edi,%edi
440062:	55                   	push   %ebp
440063:	8b ec                	mov    %esp,%ebp
440065:	56                   	push   %esi
440066:	8b 75 08             	mov    0x8(%ebp),%esi
440069:	57                   	push   %edi
44006a:	8b 7d 10             	mov    0x10(%ebp),%edi
44006d:	6a 10                	push   $0x10
44006f:	68 84 7a 40 00       	push   $0x407a84
440074:	ff 75 0c             	push   0xc(%ebp)
440077:	83 27 00             	andl   $0x0,(%edi)
44007a:	e8 eb 21 fe ff       	call   0x42226a
44007f:	83 c4 0c             	add    $0xc,%esp
440082:	85 c0                	test   %eax,%eax
440084:	74 16                	je     0x44009c
440086:	6a 10                	push   $0x10
440088:	68 04 b5 40 00       	push   $0x40b504
44008d:	ff 75 0c             	push   0xc(%ebp)
440090:	e8 d5 21 fe ff       	call   0x42226a
440095:	83 c4 0c             	add    $0xc,%esp
440098:	85 c0                	test   %eax,%eax
44009a:	75 1a                	jne    0x4400b6
44009c:	89 37                	mov    %esi,(%edi)
44009e:	85 f6                	test   %esi,%esi
4400a0:	74 14                	je     0x4400b6
4400a2:	8b 06                	mov    (%esi),%eax
4400a4:	56                   	push   %esi
4400a5:	8b 70 04             	mov    0x4(%eax),%esi
4400a8:	8b ce                	mov    %esi,%ecx
4400aa:	ff 15 c4 12 45 00    	call   *0x4512c4
4400b0:	ff d6                	call   *%esi
4400b2:	33 c0                	xor    %eax,%eax
4400b4:	eb 05                	jmp    0x4400bb
4400b6:	b8 02 40 00 80       	mov    $0x80004002,%eax
4400bb:	5f                   	pop    %edi
4400bc:	5e                   	pop    %esi
4400bd:	5d                   	pop    %ebp
4400be:	c2 0c 00             	ret    $0xc
4400c1:	8b ff                	mov    %edi,%edi
4400c3:	55                   	push   %ebp