43cd31:	56                   	push   %esi
43cd32:	8b d8                	mov    %eax,%ebx
43cd34:	8b c3                	mov    %ebx,%eax
43cd36:	e8 59 ce fd ff       	call   0x419b94
43cd3b:	8b c3                	mov    %ebx,%eax
43cd3d:	8b 10                	mov    (%eax),%edx
43cd3f:	ff 52 3c             	call   *0x3c(%edx)
43cd42:	85 c0                	test   %eax,%eax
43cd44:	74 16                	je     0x43cd5c
43cd46:	8b c3                	mov    %ebx,%eax
43cd48:	8b 10                	mov    (%eax),%edx
43cd4a:	ff 52 3c             	call   *0x3c(%edx)
43cd4d:	8b d0                	mov    %eax,%edx
43cd4f:	b1 01                	mov    $0x1,%cl
43cd51:	8b c3                	mov    %ebx,%eax
43cd53:	66 be ef ff          	mov    $0xffef,%si
43cd57:	e8 0c 67 fc ff       	call   0x403468
43cd5c:	8b c3                	mov    %ebx,%eax
43cd5e:	e8 71 d5 ff ff       	call   0x43a2d4
43cd63:	5e                   	pop    %esi
43cd64:	5b                   	pop    %ebx
43cd65:	c3                   	ret
43cd66:	8b c0                	mov    %eax,%eax
43cd68:	55                   	push   %ebp
43cd69:	8b ec                	mov    %esp,%ebp
43cd6b:	6a 00                	push   $0x0
43cd6d:	53                   	push   %ebx
43cd6e:	56                   	push   %esi
43cd6f:	57                   	push   %edi
43cd70:	8b f2                	mov    %edx,%esi
43cd72:	8b d8                	mov    %eax,%ebx
43cd74:	33 c0                	xor    %eax,%eax
43cd76:	55                   	push   %ebp
43cd77:	68 04 ce 43 00       	push   $0x43ce04
43cd7c:	64 ff 30             	push   %fs:(%eax)
43cd7f:	64 89 20             	mov    %esp,%fs:(%eax)
43cd82:	8b c6                	mov    %esi,%eax
43cd84:	8b 15 a4 67 44 00    	mov    0x4467a4,%edx
43cd8a:	e8 69 66 fc ff       	call   0x4033f8
43cd8f:	84 c0                	test   %al,%al
43cd91:	74 52                	je     0x43cde5
43cd93:	8b c3                	mov    %ebx,%eax
43cd95:	8b 10                	mov    (%eax),%edx
43cd97:	ff 52 50             	call   *0x50(%edx)
43cd9a:	8b d0                	mov    %eax,%edx
43cd9c:	8b fe                	mov    %esi,%edi
43cd9e:	8b c7                	mov    %edi,%eax
43cda0:	e8 eb a4 00 00       	call   0x447290
43cda5:	8b 93 80 00 00 00    	mov    0x80(%ebx),%edx
43cdab:	8b c7                	mov    %edi,%eax
43cdad:	e8 16 a6 00 00       	call   0x4473c8
43cdb2:	8d 55 fc             	lea    -0x4(%ebp),%edx
43cdb5:	8b c3                	mov    %ebx,%eax
43cdb7:	e8 c4 de ff ff       	call   0x43ac80
43cdbc:	8b 55 fc             	mov    -0x4(%ebp),%edx
43cdbf:	8b c7                	mov    %edi,%eax
43cdc1:	e8 62 a3 00 00       	call   0x447128
43cdc6:	8a 53 57             	mov    0x57(%ebx),%dl
43cdc9:	8b c7                	mov    %edi,%eax
43cdcb:	e8 18 a7 00 00       	call   0x4474e8
43cdd0:	ff b3 24 01 00 00    	push   0x124(%ebx)
43cdd6:	ff b3 20 01 00 00    	push   0x120(%ebx)
43cddc:	8b c7                	mov    %edi,%eax
43cdde:	8b 10                	mov    (%eax),%edx
43cde0:	ff 52 34             	call   *0x34(%edx)
43cde3:	eb 09                	jmp    0x43cdee
43cde5:	8b d6                	mov    %esi,%edx
43cde7:	8b c3                	mov    %ebx,%eax
43cde9:	e8 3e 76 fd ff       	call   0x41442c
43cdee:	33 c0                	xor    %eax,%eax
43cdf0:	5a                   	pop    %edx
43cdf1:	59                   	pop    %ecx
43cdf2:	59                   	pop    %ecx
43cdf3:	64 89 10             	mov    %edx,%fs:(%eax)
43cdf6:	68 0b ce 43 00       	push   $0x43ce0b
43cdfb:	8d 45 fc             	lea    -0x4(%ebp),%eax
43cdfe:	e8 b9 71 fc ff       	call   0x403fbc
43ce03:	c3                   	ret
43ce04:	e9 b7 6b fc ff       	jmp    0x4039c0
43ce09:	eb f0                	jmp    0x43cdfb
43ce0b:	5f                   	pop    %edi
43ce0c:	5e                   	pop    %esi
43ce0d:	5b                   	pop    %ebx
43ce0e:	59                   	pop    %ecx
43ce0f:	5d                   	pop    %ebp
43ce10:	c3                   	ret
43ce11:	8d 40 00             	lea    0x0(%eax),%eax
43ce14:	55                   	push   %ebp
43ce15:	8b ec                	mov    %esp,%ebp
43ce17:	51                   	push   %ecx
43ce18:	53                   	push   %ebx
43ce19:	56                   	push   %esi
43ce1a:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ce1d:	33 db                	xor    %ebx,%ebx
43ce1f:	8b ca                	mov    %edx,%ecx
43ce21:	85 c9                	test   %ecx,%ecx
43ce23:	7e 21                	jle    0x43ce46
43ce25:	be 01 00 00 00       	mov    $0x1,%esi
43ce2a:	8b 55 fc             	mov    -0x4(%ebp),%edx
43ce2d:	83 c2 08             	add    $0x8,%edx
43ce30:	dd 02                	fldl   (%edx)
43ce32:	8b 45 fc             	mov    -0x4(%ebp),%eax
43ce35:	dc 1c d8             	fcompl (%eax,%ebx,8)
43ce38:	df e0                	fnstsw %ax
43ce3a:	9e                   	sahf
43ce3b:	73 02                	jae    0x43ce3f
43ce3d:	8b de                	mov    %esi,%ebx
43ce3f:	46                   	inc    %esi
43ce40:	83 c2 08             	add    $0x8,%edx
43ce43:	49                   	dec    %ecx
43ce44:	75 ea                	jne    0x43ce30
43ce46:	8b c3                	mov    %ebx,%eax
43ce48:	5e                   	pop    %esi
43ce49:	5b                   	pop    %ebx
43ce4a:	59                   	pop    %ecx
43ce4b:	5d                   	pop    %ebp
43ce4c:	c3                   	ret
43ce4d:	8d 40 00             	lea    0x0(%eax),%eax
43ce50:	53                   	push   %ebx
43ce51:	56                   	push   %esi
43ce52:	57                   	push   %edi
43ce53:	55                   	push   %ebp
43ce54:	83 c4 c8             	add    $0xffffffc8,%esp
43ce57:	8b f2                	mov    %edx,%esi
43ce59:	8d 3c 24             	lea    (%esp),%edi
43ce5c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ce5d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43ce5e:	33 db                	xor    %ebx,%ebx
43ce60:	8b 70 48             	mov    0x48(%eax),%esi
43ce63:	8b 78 4c             	mov    0x4c(%eax),%edi
43ce66:	8b 04 24             	mov    (%esp),%eax
43ce69:	85 c0                	test   %eax,%eax
43ce6b:	7f 07                	jg     0x43ce74
43ce6d:	b3 03                	mov    $0x3,%bl
43ce6f:	e9 81 00 00 00       	jmp    0x43cef5
43ce74:	3b f0                	cmp    %eax,%esi
43ce76:	7f 04                	jg     0x43ce7c
43ce78:	b3 04                	mov    $0x4,%bl
43ce7a:	eb 79                	jmp    0x43cef5
43ce7c:	8b 54 24 04          	mov    0x4(%esp),%edx
43ce80:	85 d2                	test   %edx,%edx
43ce82:	7f 04                	jg     0x43ce88
43ce84:	b3 01                	mov    $0x1,%bl
43ce86:	eb 6d                	jmp    0x43cef5
43ce88:	3b fa                	cmp    %edx,%edi
43ce8a:	7f 04                	jg     0x43ce90
43ce8c:	b3 02                	mov    $0x2,%bl
43ce8e:	eb 65                	jmp    0x43cef5
43ce90:	8b ea                	mov    %edx,%ebp
43ce92:	2b fa                	sub    %edx,%edi
43ce94:	89 44 24 08          	mov    %eax,0x8(%esp)
43ce98:	2b f0                	sub    %eax,%esi
43ce9a:	db 44 24 08          	fildl  0x8(%esp)
43ce9e:	dd 5c 24 0c          	fstpl  0xc(%esp)
43cea2:	9b                   	fwait
43cea3:	89 74 24 2c          	mov    %esi,0x2c(%esp)
43cea7:	db 44 24 2c          	fildl  0x2c(%esp)
43ceab:	dd 5c 24 14          	fstpl  0x14(%esp)
43ceaf:	9b                   	fwait
43ceb0:	89 6c 24 30          	mov    %ebp,0x30(%esp)
43ceb4:	db 44 24 30          	fildl  0x30(%esp)
43ceb8:	dd 5c 24 1c          	fstpl  0x1c(%esp)
43cebc:	9b                   	fwait
43cebd:	89 7c 24 34          	mov    %edi,0x34(%esp)
43cec1:	db 44 24 34          	fildl  0x34(%esp)
43cec5:	dd 5c 24 24          	fstpl  0x24(%esp)
43cec9:	9b                   	fwait
43ceca:	8d 44 24 0c          	lea    0xc(%esp),%eax
43cece:	ba 03 00 00 00       	mov    $0x3,%edx
43ced3:	e8 3c ff ff ff       	call   0x43ce14
43ced8:	83 e8 01             	sub    $0x1,%eax
43cedb:	72 0a                	jb     0x43cee7
43cedd:	74 0c                	je     0x43ceeb
43cedf:	48                   	dec    %eax
43cee0:	74 0d                	je     0x43ceef
43cee2:	48                   	dec    %eax
43cee3:	74 0e                	je     0x43cef3
43cee5:	eb 0e                	jmp    0x43cef5
43cee7:	b3 03                	mov    $0x3,%bl
43cee9:	eb 0a                	jmp    0x43cef5
43ceeb:	b3 04                	mov    $0x4,%bl
43ceed:	eb 06                	jmp    0x43cef5
43ceef:	b3 01                	mov    $0x1,%bl
43cef1:	eb 02                	jmp    0x43cef5
43cef3:	b3 02                	mov    $0x2,%bl
43cef5:	8b c3                	mov    %ebx,%eax
43cef7:	83 c4 38             	add    $0x38,%esp
43cefa:	5d                   	pop    %ebp
43cefb:	5f                   	pop    %edi
43cefc:	5e                   	pop    %esi
43cefd:	5b                   	pop    %ebx
43cefe:	c3                   	ret
43ceff:	90                   	nop
43cf00:	53                   	push   %ebx
43cf01:	8b d8                	mov    %eax,%ebx
43cf03:	83 bb a0 00 00 00 00 	cmpl   $0x0,0xa0(%ebx)
43cf0a:	74 18                	je     0x43cf24
43cf0c:	8b c3                	mov    %ebx,%eax
43cf0e:	8b 10                	mov    (%eax),%edx
43cf10:	ff 52 58             	call   *0x58(%edx)
43cf13:	8b d0                	mov    %eax,%edx
43cf15:	8b 83 a0 00 00 00    	mov    0xa0(%ebx),%eax
43cf1b:	e8 d8 64 fc ff       	call   0x4033f8
43cf20:	84 c0                	test   %al,%al
43cf22:	75 04                	jne    0x43cf28
43cf24:	33 c0                	xor    %eax,%eax
43cf26:	5b                   	pop    %ebx
43cf27:	c3                   	ret
43cf28:	b0 01                	mov    $0x1,%al
43cf2a:	5b                   	pop    %ebx
43cf2b:	c3                   	ret
43cf2c:	8b 80 b8 00 00 00    	mov    0xb8(%eax),%eax
43cf32:	c3                   	ret
43cf33:	90                   	nop
43cf34:	53                   	push   %ebx
43cf35:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
43cf39:	75 16                	jne    0x43cf51
43cf3b:	8b 50 48             	mov    0x48(%eax),%edx
43cf3e:	52                   	push   %edx
43cf3f:	8b 50 4c             	mov    0x4c(%eax),%edx
43cf42:	52                   	push   %edx
43cf43:	8b 48 44             	mov    0x44(%eax),%ecx
43cf46:	8b 50 40             	mov    0x40(%eax),%edx
43cf49:	8b 18                	mov    (%eax),%ebx
43cf4b:	ff 93 84 00 00 00    	call   *0x84(%ebx)
43cf51:	5b                   	pop    %ebx
43cf52:	c3                   	ret
43cf53:	90                   	nop
43cf54:	53                   	push   %ebx
43cf55:	56                   	push   %esi
43cf56:	57                   	push   %edi
43cf57:	8b f8                	mov    %eax,%edi
43cf59:	8b da                	mov    %edx,%ebx
43cf5b:	8b c7                	mov    %edi,%eax
43cf5d:	66 be c8 ff          	mov    $0xffc8,%si
43cf61:	e8 02 65 fc ff       	call   0x403468
43cf66:	84 c0                	test   %al,%al
43cf68:	74 1a                	je     0x43cf84
43cf6a:	8b c3                	mov    %ebx,%eax
43cf6c:	83 e0 02             	and    $0x2,%eax
43cf6f:	83 f8 02             	cmp    $0x2,%eax
43cf72:	75 05                	jne    0x43cf79
43cf74:	83 e3 fd             	and    $0xfffffffd,%ebx
43cf77:	eb 0b                	jmp    0x43cf84
43cf79:	8b c3                	mov    %ebx,%eax
43cf7b:	83 e0 01             	and    $0x1,%eax
43cf7e:	48                   	dec    %eax
43cf7f:	74 03                	je     0x43cf84
43cf81:	83 cb 02             	or     $0x2,%ebx
43cf84:	8b c7                	mov    %edi,%eax
43cf86:	e8 09 00 00 00       	call   0x43cf94
43cf8b:	0b d8                	or     %eax,%ebx
43cf8d:	8b c3                	mov    %ebx,%eax
43cf8f:	5f                   	pop    %edi
43cf90:	5e                   	pop    %esi
43cf91:	5b                   	pop    %ebx
43cf92:	c3                   	ret
43cf93:	90                   	nop
43cf94:	53                   	push   %ebx
43cf95:	8b d8                	mov    %eax,%ebx
43cf97:	8b c3                	mov    %ebx,%eax
43cf99:	e8 1a e3 ff ff       	call   0x43b2b8
43cf9e:	84 c0                	test   %al,%al
43cfa0:	74 07                	je     0x43cfa9
43cfa2:	b8 00 00 02 00       	mov    $0x20000,%eax
43cfa7:	5b                   	pop    %ebx
43cfa8:	c3                   	ret
43cfa9:	33 c0                	xor    %eax,%eax
43cfab:	5b                   	pop    %ebx
43cfac:	c3                   	ret
43cfad:	8d 40 00             	lea    0x0(%eax),%eax
43cfb0:	8b 50 6c             	mov    0x6c(%eax),%edx
43cfb3:	85 d2                	test   %edx,%edx
43cfb5:	74 07                	je     0x43cfbe
43cfb7:	8b c2                	mov    %edx,%eax
43cfb9:	8b 10                	mov    (%eax),%edx
43cfbb:	ff 52 1c             	call   *0x1c(%edx)
43cfbe:	c3                   	ret
43cfbf:	90                   	nop
43cfc0:	53                   	push   %ebx
43cfc1:	56                   	push   %esi
43cfc2:	57                   	push   %edi
43cfc3:	8b fa                	mov    %edx,%edi
43cfc5:	8b d8                	mov    %eax,%ebx
43cfc7:	8b 73 6c             	mov    0x6c(%ebx),%esi
43cfca:	85 f6                	test   %esi,%esi
43cfcc:	74 18                	je     0x43cfe6
43cfce:	8b 47 08             	mov    0x8(%edi),%eax
43cfd1:	8d 50 38             	lea    0x38(%eax),%edx
43cfd4:	8b c6                	mov    %esi,%eax
43cfd6:	8b 08                	mov    (%eax),%ecx
43cfd8:	ff 51 78             	call   *0x78(%ecx)
43cfdb:	84 c0                	test   %al,%al
43cfdd:	75 07                	jne    0x43cfe6
43cfdf:	c7 47 0c 01 00 00 00 	movl   $0x1,0xc(%edi)
43cfe6:	5f                   	pop    %edi
43cfe7:	5e                   	pop    %esi
43cfe8:	5b                   	pop    %ebx
43cfe9:	c3                   	ret
43cfea:	8b c0                	mov    %eax,%eax
43cfec:	53                   	push   %ebx
43cfed:	56                   	push   %esi
43cfee:	57                   	push   %edi
43cfef:	55                   	push   %ebp
43cff0:	83 c4 d4             	add    $0xffffffd4,%esp
43cff3:	8b ea                	mov    %edx,%ebp
43cff5:	8b f8                	mov    %eax,%edi
43cff7:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
43cffb:	0f 85 0a 01 00 00    	jne    0x43d10b
43d001:	f6 47 1c 10          	testb  $0x10,0x1c(%edi)
43d005:	74 0e                	je     0x43d015
43d007:	8b d5                	mov    %ebp,%edx
43d009:	8b c7                	mov    %edi,%eax
43d00b:	8b 08                	mov    (%eax),%ecx
43d00d:	ff 51 f0             	call   *-0x10(%ecx)
43d010:	e9 f6 00 00 00       	jmp    0x43d10b
43d015:	8b d4                	mov    %esp,%edx
43d017:	8b 45 08             	mov    0x8(%ebp),%eax
43d01a:	e8 65 99 fc ff       	call   0x406984
43d01f:	8b c4                	mov    %esp,%eax
43d021:	e8 82 59 fd ff       	call   0x4129a8
43d026:	84 c0                	test   %al,%al
43d028:	74 11                	je     0x43d03b
43d02a:	8b 04 24             	mov    (%esp),%eax
43d02d:	89 44 24 08          	mov    %eax,0x8(%esp)
43d031:	8b 44 24 04          	mov    0x4(%esp),%eax
43d035:	89 44 24 0c          	mov    %eax,0xc(%esp)
43d039:	eb 3c                	jmp    0x43d077
43d03b:	8d 4c 24 08          	lea    0x8(%esp),%ecx
43d03f:	8b d4                	mov    %esp,%edx
43d041:	8b c7                	mov    %edi,%eax
43d043:	e8 7c d7 ff ff       	call   0x43a7c4
43d048:	ff 74 24 0c          	push   0xc(%esp)
43d04c:	ff 74 24 0c          	push   0xc(%esp)
43d050:	8d 54 24 1c          	lea    0x1c(%esp),%edx
43d054:	8b c7                	mov    %edi,%eax
43d056:	8b 08                	mov    (%eax),%ecx
43d058:	ff 51 44             	call   *0x44(%ecx)
43d05b:	8d 44 24 1c          	lea    0x1c(%esp),%eax
43d05f:	50                   	push   %eax
43d060:	e8 53 97 fc ff       	call   0x4067b8
43d065:	85 c0                	test   %eax,%eax
43d067:	75 0e                	jne    0x43d077
43d069:	8b d5                	mov    %ebp,%edx
43d06b:	8b c7                	mov    %edi,%eax
43d06d:	8b 08                	mov    (%eax),%ecx
43d06f:	ff 51 f0             	call   *-0x10(%ecx)
43d072:	e9 94 00 00 00       	jmp    0x43d10b
43d077:	c6 44 24 10 00       	movb   $0x0,0x10(%esp)
43d07c:	8d 4c 24 10          	lea    0x10(%esp),%ecx