43fd05:	f6 43 50 40          	testb  $0x40,0x50(%ebx)
43fd09:	74 32                	je     0x43fd3d
43fd0b:	8d 55 dc             	lea    -0x24(%ebp),%edx
43fd0e:	8b c3                	mov    %ebx,%eax
43fd10:	e8 93 f5 ff ff       	call   0x43f2a8
43fd15:	8d 45 dc             	lea    -0x24(%ebp),%eax
43fd18:	50                   	push   %eax
43fd19:	8b 45 08             	mov    0x8(%ebp),%eax
43fd1c:	83 c0 ec             	add    $0xffffffec,%eax
43fd1f:	50                   	push   %eax
43fd20:	8d 45 ef             	lea    -0x11(%ebp),%eax
43fd23:	50                   	push   %eax
43fd24:	e8 cb 69 fc ff       	call   0x4066f4
43fd29:	8b 45 08             	mov    0x8(%ebp),%eax
43fd2c:	83 c0 ec             	add    $0xffffffec,%eax
43fd2f:	50                   	push   %eax
43fd30:	8d 45 ef             	lea    -0x11(%ebp),%eax
43fd33:	50                   	push   %eax
43fd34:	e8 03 68 fc ff       	call   0x40653c
43fd39:	85 c0                	test   %eax,%eax
43fd3b:	75 08                	jne    0x43fd45
43fd3d:	85 f6                	test   %esi,%esi
43fd3f:	7f b2                	jg     0x43fcf3
43fd41:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
43fd45:	8a 45 ff             	mov    -0x1(%ebp),%al
43fd48:	5f                   	pop    %edi
43fd49:	5e                   	pop    %esi
43fd4a:	5b                   	pop    %ebx
43fd4b:	8b e5                	mov    %ebp,%esp
43fd4d:	5d                   	pop    %ebp
43fd4e:	c3                   	ret
43fd4f:	90                   	nop
43fd50:	55                   	push   %ebp
43fd51:	8b ec                	mov    %esp,%ebp
43fd53:	83 c4 e8             	add    $0xffffffe8,%esp
43fd56:	53                   	push   %ebx
43fd57:	88 4d eb             	mov    %cl,-0x15(%ebp)
43fd5a:	8b da                	mov    %edx,%ebx
43fd5c:	89 45 fc             	mov    %eax,-0x4(%ebp)
43fd5f:	84 db                	test   %bl,%bl
43fd61:	75 12                	jne    0x43fd75
43fd63:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fd66:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
43fd6a:	74 69                	je     0x43fdd5
43fd6c:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fd6f:	f6 40 51 04          	testb  $0x4,0x51(%eax)
43fd73:	75 60                	jne    0x43fdd5
43fd75:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fd78:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
43fd7c:	74 57                	je     0x43fdd5
43fd7e:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fd81:	8b 40 30             	mov    0x30(%eax),%eax
43fd84:	e8 6b 66 00 00       	call   0x4463f4
43fd89:	84 c0                	test   %al,%al
43fd8b:	74 48                	je     0x43fdd5
43fd8d:	8d 55 ec             	lea    -0x14(%ebp),%edx
43fd90:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fd93:	e8 10 f5 ff ff       	call   0x43f2a8
43fd98:	80 7d eb 00          	cmpb   $0x0,-0x15(%ebp)
43fd9c:	75 17                	jne    0x43fdb5
43fd9e:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fda1:	8b 40 30             	mov    0x30(%eax),%eax
43fda4:	f6 40 50 40          	testb  $0x40,0x50(%eax)
43fda8:	75 0b                	jne    0x43fdb5
43fdaa:	55                   	push   %ebp
43fdab:	e8 14 ff ff ff       	call   0x43fcc4
43fdb0:	59                   	pop    %ecx
43fdb1:	84 c0                	test   %al,%al
43fdb3:	74 04                	je     0x43fdb9
43fdb5:	33 c0                	xor    %eax,%eax
43fdb7:	eb 02                	jmp    0x43fdbb
43fdb9:	b0 01                	mov    $0x1,%al
43fdbb:	f6 d8                	neg    %al
43fdbd:	1b c0                	sbb    %eax,%eax
43fdbf:	50                   	push   %eax
43fdc0:	8d 45 ec             	lea    -0x14(%ebp),%eax
43fdc3:	50                   	push   %eax
43fdc4:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fdc7:	8b 40 30             	mov    0x30(%eax),%eax
43fdca:	e8 21 63 00 00       	call   0x4460f0
43fdcf:	50                   	push   %eax
43fdd0:	e8 27 69 fc ff       	call   0x4066fc
43fdd5:	5b                   	pop    %ebx
43fdd6:	8b e5                	mov    %ebp,%esp
43fdd8:	5d                   	pop    %ebp
43fdd9:	c3                   	ret
43fdda:	8b c0                	mov    %eax,%eax
43fddc:	f6 40 50 40          	testb  $0x40,0x50(%eax)
43fde0:	0f 95 c1             	setne  %cl
43fde3:	8a 50 57             	mov    0x57(%eax),%dl
43fde6:	e8 65 ff ff ff       	call   0x43fd50
43fdeb:	c3                   	ret
43fdec:	53                   	push   %ebx
43fded:	56                   	push   %esi
43fdee:	57                   	push   %edi
43fdef:	8b fa                	mov    %edx,%edi
43fdf1:	8b d8                	mov    %eax,%ebx
43fdf3:	8b c3                	mov    %ebx,%eax
43fdf5:	e8 ba 6a 01 00       	call   0x4568b4
43fdfa:	8b f0                	mov    %eax,%esi
43fdfc:	85 f6                	test   %esi,%esi
43fdfe:	74 13                	je     0x43fe13
43fe00:	3b de                	cmp    %esi,%ebx
43fe02:	74 0f                	je     0x43fe13
43fe04:	8b d7                	mov    %edi,%edx
43fe06:	8b c6                	mov    %esi,%eax
43fe08:	66 be c9 ff          	mov    $0xffc9,%si
43fe0c:	e8 33 36 fc ff       	call   0x403444
43fe11:	eb 16                	jmp    0x43fe29
43fe13:	8b 47 08             	mov    0x8(%edi),%eax
43fe16:	50                   	push   %eax
43fe17:	8b 4f 04             	mov    0x4(%edi),%ecx
43fe1a:	ba 43 b0 00 00       	mov    $0xb043,%edx
43fe1f:	8b c3                	mov    %ebx,%eax
43fe21:	e8 96 0c 00 00       	call   0x440abc
43fe26:	89 47 0c             	mov    %eax,0xc(%edi)
43fe29:	5f                   	pop    %edi
43fe2a:	5e                   	pop    %esi
43fe2b:	5b                   	pop    %ebx
43fe2c:	c3                   	ret
43fe2d:	8d 40 00             	lea    0x0(%eax),%eax
43fe30:	56                   	push   %esi
43fe31:	8b 70 30             	mov    0x30(%eax),%esi
43fe34:	85 f6                	test   %esi,%esi
43fe36:	74 0a                	je     0x43fe42
43fe38:	8b c6                	mov    %esi,%eax
43fe3a:	8b 10                	mov    (%eax),%edx
43fe3c:	ff 92 88 00 00 00    	call   *0x88(%edx)
43fe42:	5e                   	pop    %esi
43fe43:	c3                   	ret
43fe44:	8b 10                	mov    (%eax),%edx
43fe46:	ff 92 80 00 00 00    	call   *0x80(%edx)
43fe4c:	c3                   	ret
43fe4d:	8d 40 00             	lea    0x0(%eax),%eax
43fe50:	55                   	push   %ebp
43fe51:	8b ec                	mov    %esp,%ebp
43fe53:	83 c4 f8             	add    $0xfffffff8,%esp
43fe56:	53                   	push   %ebx
43fe57:	89 45 fc             	mov    %eax,-0x4(%ebp)
43fe5a:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fe5d:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
43fe61:	75 1a                	jne    0x43fe7d
43fe63:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fe66:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
43fe6a:	0f 84 d3 00 00 00    	je     0x43ff43
43fe70:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fe73:	f6 40 51 04          	testb  $0x4,0x51(%eax)
43fe77:	0f 85 c6 00 00 00    	jne    0x43ff43
43fe7d:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fe80:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
43fe84:	0f 84 b9 00 00 00    	je     0x43ff43
43fe8a:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fe8d:	8b 40 30             	mov    0x30(%eax),%eax
43fe90:	e8 5f 65 00 00       	call   0x4463f4
43fe95:	84 c0                	test   %al,%al
43fe97:	0f 84 a6 00 00 00    	je     0x43ff43
43fe9d:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fea0:	f6 40 50 40          	testb  $0x40,0x50(%eax)
43fea4:	0f 84 86 00 00 00    	je     0x43ff30
43feaa:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fead:	8b 40 30             	mov    0x30(%eax),%eax
43feb0:	e8 3b 62 00 00       	call   0x4460f0
43feb5:	50                   	push   %eax
43feb6:	e8 e1 66 fc ff       	call   0x40659c
43febb:	89 45 f8             	mov    %eax,-0x8(%ebp)
43febe:	33 c9                	xor    %ecx,%ecx
43fec0:	55                   	push   %ebp
43fec1:	68 29 ff 43 00       	push   $0x43ff29
43fec6:	64 ff 31             	push   %fs:(%ecx)
43fec9:	64 89 21             	mov    %esp,%fs:(%ecx)
43fecc:	8b 55 fc             	mov    -0x4(%ebp),%edx
43fecf:	8b 52 44             	mov    0x44(%edx),%edx
43fed2:	8b ca                	mov    %edx,%ecx
43fed4:	8b 5d fc             	mov    -0x4(%ebp),%ebx
43fed7:	03 4b 4c             	add    0x4c(%ebx),%ecx
43feda:	51                   	push   %ecx
43fedb:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fede:	8b 40 40             	mov    0x40(%eax),%eax
43fee1:	8b c8                	mov    %eax,%ecx
43fee3:	8b 5d fc             	mov    -0x4(%ebp),%ebx
43fee6:	03 4b 48             	add    0x48(%ebx),%ecx
43fee9:	51                   	push   %ecx
43feea:	52                   	push   %edx
43feeb:	50                   	push   %eax
43feec:	8b 45 f8             	mov    -0x8(%ebp),%eax
43feef:	50                   	push   %eax
43fef0:	e8 1f 64 fc ff       	call   0x406314
43fef5:	8b 45 fc             	mov    -0x4(%ebp),%eax
43fef8:	8b 40 30             	mov    0x30(%eax),%eax
43fefb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43fefe:	8b 55 f8             	mov    -0x8(%ebp),%edx
43ff01:	e8 f6 3f 00 00       	call   0x443efc
43ff06:	33 c0                	xor    %eax,%eax
43ff08:	5a                   	pop    %edx
43ff09:	59                   	pop    %ecx
43ff0a:	59                   	pop    %ecx
43ff0b:	64 89 10             	mov    %edx,%fs:(%eax)
43ff0e:	68 43 ff 43 00       	push   $0x43ff43
43ff13:	8b 45 f8             	mov    -0x8(%ebp),%eax
43ff16:	50                   	push   %eax
43ff17:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ff1a:	8b 40 30             	mov    0x30(%eax),%eax
43ff1d:	e8 ce 61 00 00       	call   0x4460f0
43ff22:	50                   	push   %eax
43ff23:	e8 c4 68 fc ff       	call   0x4067ec
43ff28:	c3                   	ret
43ff29:	e9 6e 3a fc ff       	jmp    0x40399c
43ff2e:	eb e3                	jmp    0x43ff13
43ff30:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ff33:	8b 10                	mov    (%eax),%edx
43ff35:	ff 52 7c             	call   *0x7c(%edx)
43ff38:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ff3b:	8b 10                	mov    (%eax),%edx
43ff3d:	ff 92 88 00 00 00    	call   *0x88(%edx)
43ff43:	5b                   	pop    %ebx
43ff44:	59                   	pop    %ecx
43ff45:	59                   	pop    %ecx
43ff46:	5d                   	pop    %ebp
43ff47:	c3                   	ret
43ff48:	33 c0                	xor    %eax,%eax
43ff4a:	c3                   	ret
43ff4b:	90                   	nop
43ff4c:	8b 15 1c de 46 00    	mov    0x46de1c,%edx
43ff52:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
43ff56:	74 06                	je     0x43ff5e
43ff58:	80 78 5f 00          	cmpb   $0x0,0x5f(%eax)
43ff5c:	75 03                	jne    0x43ff61
43ff5e:	33 c0                	xor    %eax,%eax
43ff60:	c3                   	ret
43ff61:	b0 01                	mov    $0x1,%al
43ff63:	c3                   	ret
43ff64:	8b 15 1c de 46 00    	mov    0x46de1c,%edx
43ff6a:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
43ff6e:	74 06                	je     0x43ff76
43ff70:	80 78 5f 01          	cmpb   $0x1,0x5f(%eax)
43ff74:	74 03                	je     0x43ff79
43ff76:	33 c0                	xor    %eax,%eax
43ff78:	c3                   	ret
43ff79:	b0 01                	mov    $0x1,%al
43ff7b:	c3                   	ret
43ff7c:	8b 15 1c de 46 00    	mov    0x46de1c,%edx
43ff82:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
43ff86:	74 08                	je     0x43ff90
43ff88:	8a 40 5f             	mov    0x5f(%eax),%al
43ff8b:	48                   	dec    %eax
43ff8c:	2c 02                	sub    $0x2,%al
43ff8e:	72 03                	jb     0x43ff93
43ff90:	33 c0                	xor    %eax,%eax
43ff92:	c3                   	ret
43ff93:	b0 01                	mov    $0x1,%al
43ff95:	c3                   	ret
43ff96:	8b c0                	mov    %eax,%eax
43ff98:	8b 15 18 eb 46 00    	mov    0x46eb18,%edx
43ff9e:	8b 4a 08             	mov    0x8(%edx),%ecx
43ffa1:	8b 15 18 eb 46 00    	mov    0x46eb18,%edx
43ffa7:	8a 52 04             	mov    0x4(%edx),%dl
43ffaa:	e8 01 00 00 00       	call   0x43ffb0
43ffaf:	c3                   	ret
43ffb0:	53                   	push   %ebx
43ffb1:	56                   	push   %esi
43ffb2:	57                   	push   %edi
43ffb3:	83 c4 f0             	add    $0xfffffff0,%esp
43ffb6:	8b f1                	mov    %ecx,%esi
43ffb8:	8b da                	mov    %edx,%ebx
43ffba:	8b f8                	mov    %eax,%edi
43ffbc:	8b c7                	mov    %edi,%eax
43ffbe:	8b 15 78 4f 45 00    	mov    0x454f78,%edx
43ffc4:	e8 0b 34 fc ff       	call   0x4033d4
43ffc9:	84 c0                	test   %al,%al
43ffcb:	74 20                	je     0x43ffed
43ffcd:	80 bf 9b 00 00 00 01 	cmpb   $0x1,0x9b(%edi)
43ffd4:	74 17                	je     0x43ffed
43ffd6:	8b 0d d4 dc 46 00    	mov    0x46dcd4,%ecx
43ffdc:	b2 01                	mov    $0x1,%dl
43ffde:	a1 28 18 41 00       	mov    0x411828,%eax
43ffe3:	e8 3c b6 fc ff       	call   0x40b624
43ffe8:	e8 e7 39 fc ff       	call   0x4039d4
43ffed:	8b c7                	mov    %edi,%eax
43ffef:	e8 fc 0a 00 00       	call   0x440af0
43fff4:	83 3d 34 eb 46 00 00 	cmpl   $0x0,0x46eb34
43fffb:	74 09                	je     0x440006
43fffd:	83 3d 34 eb 46 00 ff 	cmpl   $0xffffffff,0x46eb34
440004:	75 65                	jne    0x44006b
440006:	33 c0                	xor    %eax,%eax
440008:	a3 34 eb 46 00       	mov    %eax,0x46eb34
44000d:	f6 47 54 01          	testb  $0x1,0x54(%edi)
440011:	74 38                	je     0x44004b
440013:	54                   	push   %esp
440014:	e8 7b 65 fc ff       	call   0x406594
440019:	8d 4c 24 08          	lea    0x8(%esp),%ecx
44001d:	8b d4                	mov    %esp,%edx
44001f:	8b c7                	mov    %edi,%eax
440021:	e8 26 f4 ff ff       	call   0x43f44c
440026:	8b 44 24 08          	mov    0x8(%esp),%eax
44002a:	89 04 24             	mov    %eax,(%esp)
44002d:	8b 44 24 0c          	mov    0xc(%esp),%eax
440031:	89 44 24 04          	mov    %eax,0x4(%esp)
440035:	8b c4                	mov    %esp,%eax
440037:	e8 60 69 fc ff       	call   0x40699c
44003c:	50                   	push   %eax
44003d:	33 c9                	xor    %ecx,%ecx
44003f:	ba 02 02 00 00       	mov    $0x202,%edx
440044:	8b c7                	mov    %edi,%eax
440046:	e8 71 0a 00 00       	call   0x440abc
44004b:	85 f6                	test   %esi,%esi
44004d:	7d 08                	jge    0x440057
44004f:	a1 18 eb 46 00       	mov    0x46eb18,%eax
440054:	8b 70 08             	mov    0x8(%eax),%esi
440057:	83 3d 34 eb 46 00 ff 	cmpl   $0xffffffff,0x46eb34
44005e:	74 0b                	je     0x44006b
440060:	8b ce                	mov    %esi,%ecx
440062:	8b d3                	mov    %ebx,%edx
440064:	8b c7                	mov    %edi,%eax
440066:	e8 ed db ff ff       	call   0x43dc58
44006b:	83 c4 10             	add    $0x10,%esp
44006e:	5f                   	pop    %edi
44006f:	5e                   	pop    %esi
440070:	5b                   	pop    %ebx
440071:	c3                   	ret
440072:	8b c0                	mov    %eax,%eax
440074:	c3                   	ret
440075:	8d 40 00             	lea    0x0(%eax),%eax
440078:	3b 05 34 eb 46 00    	cmp    0x46eb34,%eax
44007e:	0f 94 c0             	sete   %al
440081:	c3                   	ret
440082:	8b c0                	mov    %eax,%eax
440084:	55                   	push   %ebp
440085:	8b ec                	mov    %esp,%ebp
440087:	53                   	push   %ebx
440088:	56                   	push   %esi
440089:	8b 75 08             	mov    0x8(%ebp),%esi
44008c:	c6 06 00             	movb   $0x0,(%esi)
44008f:	66 83 b8 f2 00 00 00 	cmpw   $0x0,0xf2(%eax)
440096:	00
440097:	74 1f                	je     0x4400b8
440099:	c6 06 01             	movb   $0x1,(%esi)
44009c:	51                   	push   %ecx
44009d:	8b 4d 10             	mov    0x10(%ebp),%ecx
4400a0:	51                   	push   %ecx
4400a1:	8a 4d 0c             	mov    0xc(%ebp),%cl
4400a4:	51                   	push   %ecx
4400a5:	56                   	push   %esi
4400a6:	8b d8                	mov    %eax,%ebx
4400a8:	8b ca                	mov    %edx,%ecx
4400aa:	8b d0                	mov    %eax,%edx
4400ac:	8b 83 f4 00 00 00    	mov    0xf4(%ebx),%eax
4400b2:	ff 93 f0 00 00 00    	call   *0xf0(%ebx)
4400b8:	5e                   	pop    %esi
4400b9:	5b                   	pop    %ebx
4400ba:	5d                   	pop    %ebp