43ed70:	50                   	push   %eax
43ed71:	68 fc 2f 41 00       	push   $0x412ffc
43ed76:	e8 65 07 00 00       	call   0x43f4e0
43ed7b:	8b 75 fc             	mov    -0x4(%ebp),%esi
43ed7e:	85 f6                	test   %esi,%esi
43ed80:	75 03                	jne    0x43ed85
43ed82:	8b 75 e8             	mov    -0x18(%ebp),%esi
43ed85:	6a 00                	push   $0x0
43ed87:	8d 45 f8             	lea    -0x8(%ebp),%eax
43ed8a:	8b ce                	mov    %esi,%ecx
43ed8c:	50                   	push   %eax
43ed8d:	ff 15 84 23 45 00    	call   *0x452384
43ed93:	ff d6                	call   *%esi
43ed95:	83 f8 78             	cmp    $0x78,%eax
43ed98:	74 0f                	je     0x43eda9
43ed9a:	83 f8 7a             	cmp    $0x7a,%eax
43ed9d:	75 0a                	jne    0x43eda9
43ed9f:	c7 05 00 1d 45 00 01 	movl   $0x1,0x451d00
43eda6:	00 00 00
43eda9:	f7 45 ec 00 10 00 00 	testl  $0x1000,-0x14(%ebp)
43edb0:	c7 05 fc 1c 45 00 01 	movl   $0x1,0x451cfc
43edb7:	00 00 00
43edba:	74 25                	je     0x43ede1
43edbc:	66 8b 45 ee          	mov    -0x12(%ebp),%ax
43edc0:	66 83 f8 ff          	cmp    $0xffff,%ax
43edc4:	74 1b                	je     0x43ede1
43edc6:	0f bf c8             	movswl %ax,%ecx
43edc9:	8b 45 e0             	mov    -0x20(%ebp),%eax
43edcc:	8d 04 48             	lea    (%eax,%ecx,2),%eax
43edcf:	50                   	push   %eax
43edd0:	ff 15 64 21 45 00    	call   *0x452164
43edd6:	85 c0                	test   %eax,%eax
43edd8:	74 07                	je     0x43ede1
43edda:	50                   	push   %eax
43eddb:	ff 15 60 21 45 00    	call   *0x452160
43ede1:	5e                   	pop    %esi
43ede2:	8b e5                	mov    %ebp,%esp
43ede4:	5d                   	pop    %ebp
43ede5:	c3                   	ret
43ede6:	cc                   	int3
43ede7:	cc                   	int3
43ede8:	cc                   	int3
43ede9:	cc                   	int3
43edea:	cc                   	int3
43edeb:	cc                   	int3
43edec:	cc                   	int3
43eded:	cc                   	int3
43edee:	cc                   	int3
43edef:	cc                   	int3
43edf0:	b8 78 00 00 00       	mov    $0x78,%eax
43edf5:	c2 14 00             	ret    $0x14
43edf8:	cc                   	int3
43edf9:	cc                   	int3
43edfa:	cc                   	int3
43edfb:	cc                   	int3
43edfc:	cc                   	int3
43edfd:	cc                   	int3
43edfe:	cc                   	int3
43edff:	cc                   	int3
43ee00:	b8 78 00 00 00       	mov    $0x78,%eax
43ee05:	c2 18 00             	ret    $0x18
43ee08:	cc                   	int3
43ee09:	cc                   	int3
43ee0a:	cc                   	int3
43ee0b:	cc                   	int3
43ee0c:	cc                   	int3
43ee0d:	cc                   	int3
43ee0e:	cc                   	int3
43ee0f:	cc                   	int3
43ee10:	b8 78 00 00 00       	mov    $0x78,%eax
43ee15:	c2 04 00             	ret    $0x4
43ee18:	cc                   	int3
43ee19:	cc                   	int3
43ee1a:	cc                   	int3
43ee1b:	cc                   	int3
43ee1c:	cc                   	int3
43ee1d:	cc                   	int3
43ee1e:	cc                   	int3
43ee1f:	cc                   	int3
43ee20:	b8 78 00 00 00       	mov    $0x78,%eax
43ee25:	c2 08 00             	ret    $0x8
43ee28:	cc                   	int3
43ee29:	cc                   	int3
43ee2a:	cc                   	int3
43ee2b:	cc                   	int3
43ee2c:	cc                   	int3
43ee2d:	cc                   	int3
43ee2e:	cc                   	int3
43ee2f:	cc                   	int3
43ee30:	8b ff                	mov    %edi,%edi
43ee32:	c3                   	ret
43ee33:	cc                   	int3
43ee34:	cc                   	int3
43ee35:	cc                   	int3
43ee36:	cc                   	int3
43ee37:	cc                   	int3
43ee38:	cc                   	int3
43ee39:	cc                   	int3
43ee3a:	cc                   	int3
43ee3b:	cc                   	int3
43ee3c:	cc                   	int3
43ee3d:	cc                   	int3
43ee3e:	cc                   	int3
43ee3f:	cc                   	int3
43ee40:	8b ff                	mov    %edi,%edi
43ee42:	55                   	push   %ebp
43ee43:	8b ec                	mov    %esp,%ebp
43ee45:	83 ec 1c             	sub    $0x1c,%esp
43ee48:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
43ee4d:	33 c5                	xor    %ebp,%eax
43ee4f:	89 45 fc             	mov    %eax,-0x4(%ebp)
43ee52:	83 3d 08 1d 45 00 00 	cmpl   $0x0,0x451d08
43ee59:	53                   	push   %ebx
43ee5a:	56                   	push   %esi
43ee5b:	57                   	push   %edi
43ee5c:	75 4a                	jne    0x43eea8
43ee5e:	68 00 01 00 00       	push   $0x100
43ee63:	6a 00                	push   $0x0
43ee65:	ff 35 00 12 45 00    	push   0x451200
43ee6b:	ff 15 24 21 45 00    	call   *0x452124
43ee71:	85 c0                	test   %eax,%eax
43ee73:	75 2e                	jne    0x43eea3
43ee75:	a3 08 1d 45 00       	mov    %eax,0x451d08
43ee7a:	e8 71 ee ff ff       	call   0x43dcf0
43ee7f:	83 c0 10             	add    $0x10,%eax
43ee82:	74 14                	je     0x43ee98
43ee84:	e8 67 ee ff ff       	call   0x43dcf0
43ee89:	83 c0 14             	add    $0x14,%eax
43ee8c:	c7 40 04 29 00 00 00 	movl   $0x29,0x4(%eax)
43ee93:	e9 84 00 00 00       	jmp    0x43ef1c
43ee98:	33 c0                	xor    %eax,%eax
43ee9a:	c7 40 04 29 00 00 00 	movl   $0x29,0x4(%eax)
43eea1:	eb 79                	jmp    0x43ef1c
43eea3:	a3 08 1d 45 00       	mov    %eax,0x451d08
43eea8:	83 3d 04 1d 45 00 00 	cmpl   $0x0,0x451d04
43eeaf:	0f 85 9c 00 00 00    	jne    0x43ef51
43eeb5:	6a 0c                	push   $0xc
43eeb7:	6a 00                	push   $0x0
43eeb9:	ff 35 00 12 45 00    	push   0x451200
43eebf:	ff 15 24 21 45 00    	call   *0x452124
43eec5:	8b f0                	mov    %eax,%esi
43eec7:	85 f6                	test   %esi,%esi
43eec9:	74 28                	je     0x43eef3
43eecb:	8b 0d 08 1d 45 00    	mov    0x451d08,%ecx
43eed1:	68 00 01 00 00       	push   $0x100
43eed6:	6a 00                	push   $0x0
43eed8:	51                   	push   %ecx
43eed9:	c7 06 14 11 40 00    	movl   $0x401114,(%esi)
43eedf:	c7 46 04 00 08 00 00 	movl   $0x800,0x4(%esi)
43eee6:	89 4e 08             	mov    %ecx,0x8(%esi)
43eee9:	e8 73 eb 00 00       	call   0x44da61
43eeee:	83 c4 0c             	add    $0xc,%esp
43eef1:	eb 02                	jmp    0x43eef5
43eef3:	33 f6                	xor    %esi,%esi
43eef5:	89 35 04 1d 45 00    	mov    %esi,0x451d04
43eefb:	85 f6                	test   %esi,%esi
43eefd:	75 52                	jne    0x43ef51
43eeff:	e8 ec ed ff ff       	call   0x43dcf0
43ef04:	83 c0 10             	add    $0x10,%eax
43ef07:	74 0a                	je     0x43ef13
43ef09:	e8 e2 ed ff ff       	call   0x43dcf0
43ef0e:	83 c0 14             	add    $0x14,%eax
43ef11:	eb 02                	jmp    0x43ef15
43ef13:	33 c0                	xor    %eax,%eax
43ef15:	c7 40 04 2d 00 00 00 	movl   $0x2d,0x4(%eax)
43ef1c:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
43ef23:	fc ff ff
43ef26:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
43ef2d:	c7 00 dc 31 41 00    	movl   $0x4131dc,(%eax)
43ef33:	75 06                	jne    0x43ef3b
43ef35:	ff 15 58 20 45 00    	call   *0x452058
43ef3b:	b8 0d fc ff ff       	mov    $0xfffffc0d,%eax
43ef40:	5f                   	pop    %edi
43ef41:	5e                   	pop    %esi
43ef42:	5b                   	pop    %ebx
43ef43:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43ef46:	33 cd                	xor    %ebp,%ecx
43ef48:	e8 03 e0 00 00       	call   0x44cf50
43ef4d:	8b e5                	mov    %ebp,%esp
43ef4f:	5d                   	pop    %ebp
43ef50:	c3                   	ret
43ef51:	8b 0d 1c f0 44 00    	mov    0x44f01c,%ecx
43ef57:	68 30 f0 44 00       	push   $0x44f030
43ef5c:	68 18 f0 44 00       	push   $0x44f018
43ef61:	68 b0 48 41 00       	push   $0x4148b0
43ef66:	8b 41 f0             	mov    -0x10(%ecx),%eax
43ef69:	89 45 ec             	mov    %eax,-0x14(%ebp)
43ef6c:	8b 41 f4             	mov    -0xc(%ecx),%eax
43ef6f:	89 45 f0             	mov    %eax,-0x10(%ebp)
43ef72:	8b 41 f8             	mov    -0x8(%ecx),%eax
43ef75:	89 45 f4             	mov    %eax,-0xc(%ebp)
43ef78:	8b 41 fc             	mov    -0x4(%ecx),%eax
43ef7b:	89 45 f8             	mov    %eax,-0x8(%ebp)
43ef7e:	8d 45 ec             	lea    -0x14(%ebp),%eax
43ef81:	50                   	push   %eax
43ef82:	c7 05 38 f0 44 00 00 	movl   $0x0,0x44f038
43ef89:	00 00 00
43ef8c:	c7 05 3c f0 44 00 00 	movl   $0x0,0x44f03c
43ef93:	00 00 00
43ef96:	ff 15 90 22 45 00    	call   *0x452290
43ef9c:	85 c0                	test   %eax,%eax
43ef9e:	75 77                	jne    0x43f017
43efa0:	8b 3d 1c f0 44 00    	mov    0x44f01c,%edi
43efa6:	8b 35 7c f7 44 00    	mov    0x44f77c,%esi
43efac:	0f b7 1f             	movzwl (%edi),%ebx
43efaf:	85 f6                	test   %esi,%esi
43efb1:	75 4a                	jne    0x43effd
43efb3:	8b 15 74 f7 44 00    	mov    0x44f774,%edx
43efb9:	8d 45 e8             	lea    -0x18(%ebp),%eax
43efbc:	8b 0d 68 f7 44 00    	mov    0x44f768,%ecx
43efc2:	81 e2 00 08 00 00    	and    $0x800,%edx
43efc8:	50                   	push   %eax
43efc9:	68 76 f7 44 00       	push   $0x44f776
43efce:	ff 35 6c f7 44 00    	push   0x44f76c
43efd4:	c1 ea 0b             	shr    $0xb,%edx
43efd7:	89 75 e8             	mov    %esi,-0x18(%ebp)
43efda:	e8 01 05 00 00       	call   0x43f4e0
43efdf:	8b 75 e8             	mov    -0x18(%ebp),%esi
43efe2:	89 35 7c f7 44 00    	mov    %esi,0x44f77c
43efe8:	a3 78 f7 44 00       	mov    %eax,0x44f778
43efed:	85 f6                	test   %esi,%esi
43efef:	75 0c                	jne    0x43effd
43eff1:	8b 35 70 f7 44 00    	mov    0x44f770,%esi
43eff7:	89 35 7c f7 44 00    	mov    %esi,0x44f77c
43effd:	53                   	push   %ebx
43effe:	57                   	push   %edi
43efff:	6a 02                	push   $0x2
43f001:	ff 35 34 f0 44 00    	push   0x44f034
43f007:	8b ce                	mov    %esi,%ecx
43f009:	ff 35 30 f0 44 00    	push   0x44f030
43f00f:	ff 15 84 23 45 00    	call   *0x452384
43f015:	ff d6                	call   *%esi
43f017:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43f01a:	33 c0                	xor    %eax,%eax
43f01c:	5f                   	pop    %edi
43f01d:	5e                   	pop    %esi
43f01e:	33 cd                	xor    %ebp,%ecx
43f020:	5b                   	pop    %ebx
43f021:	e8 2a df 00 00       	call   0x44cf50
43f026:	8b e5                	mov    %ebp,%esp
43f028:	5d                   	pop    %ebp
43f029:	c3                   	ret
43f02a:	cc                   	int3
43f02b:	cc                   	int3
43f02c:	cc                   	int3
43f02d:	cc                   	int3
43f02e:	cc                   	int3
43f02f:	cc                   	int3
43f030:	8b ff                	mov    %edi,%edi
43f032:	55                   	push   %ebp
43f033:	8b ec                	mov    %esp,%ebp
43f035:	83 e4 f8             	and    $0xfffffff8,%esp
43f038:	83 ec 5c             	sub    $0x5c,%esp
43f03b:	a1 e4 f8 44 00       	mov    0x44f8e4,%eax
43f040:	33 c4                	xor    %esp,%eax
43f042:	89 44 24 58          	mov    %eax,0x58(%esp)
43f046:	83 3d 18 f0 44 00 05 	cmpl   $0x5,0x44f018
43f04d:	53                   	push   %ebx
43f04e:	56                   	push   %esi
43f04f:	57                   	push   %edi
43f050:	8b fa                	mov    %edx,%edi
43f052:	8b d9                	mov    %ecx,%ebx
43f054:	0f 86 1a 01 00 00    	jbe    0x43f174
43f05a:	8b 35 24 f0 44 00    	mov    0x44f024,%esi
43f060:	33 c0                	xor    %eax,%eax
43f062:	81 e6 00 40 00 00    	and    $0x4000,%esi
43f068:	0b c6                	or     %esi,%eax
43f06a:	0f 84 04 01 00 00    	je     0x43f174
43f070:	8b 0d 2c f0 44 00    	mov    0x44f02c,%ecx
43f076:	33 d2                	xor    %edx,%edx
43f078:	8b c1                	mov    %ecx,%eax
43f07a:	25 00 40 00 00       	and    $0x4000,%eax
43f07f:	3b 15 28 f0 44 00    	cmp    0x44f028,%edx
43f085:	0f 85 e9 00 00 00    	jne    0x43f174
43f08b:	3b c1                	cmp    %ecx,%eax
43f08d:	0f 85 e1 00 00 00    	jne    0x43f174
43f093:	8b 55 08             	mov    0x8(%ebp),%edx
43f096:	85 d2                	test   %edx,%edx
43f098:	74 1e                	je     0x43f0b8
43f09a:	8b ca                	mov    %edx,%ecx
43f09c:	8d 71 02             	lea    0x2(%ecx),%esi
43f09f:	90                   	nop
43f0a0:	66 8b 01             	mov    (%ecx),%ax
43f0a3:	83 c1 02             	add    $0x2,%ecx
43f0a6:	66 85 c0             	test   %ax,%ax
43f0a9:	75 f5                	jne    0x43f0a0
43f0ab:	2b ce                	sub    %esi,%ecx
43f0ad:	d1 f9                	sar    $1,%ecx
43f0af:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
43f0b6:	eb 0a                	jmp    0x43f0c2
43f0b8:	ba 8c 20 40 00       	mov    $0x40208c,%edx
43f0bd:	b9 02 00 00 00       	mov    $0x2,%ecx
43f0c2:	89 54 24 50          	mov    %edx,0x50(%esp)
43f0c6:	c7 44 24 54 00 00 00 	movl   $0x0,0x54(%esp)
43f0cd:	00
43f0ce:	89 4c 24 58          	mov    %ecx,0x58(%esp)
43f0d2:	c7 44 24 5c 00 00 00 	movl   $0x0,0x5c(%esp)
43f0d9:	00
43f0da:	85 ff                	test   %edi,%edi
43f0dc:	74 11                	je     0x43f0ef
43f0de:	8b cf                	mov    %edi,%ecx
43f0e0:	8d 51 01             	lea    0x1(%ecx),%edx
43f0e3:	8a 01                	mov    (%ecx),%al
43f0e5:	41                   	inc    %ecx
43f0e6:	84 c0                	test   %al,%al
43f0e8:	75 f9                	jne    0x43f0e3
43f0ea:	2b ca                	sub    %edx,%ecx
43f0ec:	41                   	inc    %ecx
43f0ed:	eb 0a                	jmp    0x43f0f9
43f0ef:	bf 52 0d 41 00       	mov    $0x410d52,%edi
43f0f4:	b9 01 00 00 00       	mov    $0x1,%ecx
43f0f9:	89 7c 24 40          	mov    %edi,0x40(%esp)
43f0fd:	c7 44 24 44 00 00 00 	movl   $0x0,0x44(%esp)
43f104:	00
43f105:	89 4c 24 48          	mov    %ecx,0x48(%esp)
43f109:	c7 44 24 4c 00 00 00 	movl   $0x0,0x4c(%esp)
43f110:	00
43f111:	85 db                	test   %ebx,%ebx
43f113:	74 23                	je     0x43f138
43f115:	8b cb                	mov    %ebx,%ecx
43f117:	8d 51 02             	lea    0x2(%ecx),%edx
43f11a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
43f120:	66 8b 01             	mov    (%ecx),%ax
43f123:	83 c1 02             	add    $0x2,%ecx
43f126:	66 85 c0             	test   %ax,%ax
43f129:	75 f5                	jne    0x43f120
43f12b:	2b ca                	sub    %edx,%ecx
43f12d:	d1 f9                	sar    $1,%ecx
43f12f:	8d 0c 4d 02 00 00 00 	lea    0x2(,%ecx,2),%ecx
43f136:	eb 0a                	jmp    0x43f142
43f138:	bb 8c 20 40 00       	mov    $0x40208c,%ebx
43f13d:	b9 02 00 00 00       	mov    $0x2,%ecx
43f142:	8d 44 24 10          	lea    0x10(%esp),%eax
43f146:	89 5c 24 30          	mov    %ebx,0x30(%esp)
43f14a:	50                   	push   %eax
43f14b:	6a 05                	push   $0x5
43f14d:	6a 00                	push   $0x0
43f14f:	6a 00                	push   $0x0
43f151:	68 34 44 41 00       	push   $0x414434
43f156:	68 18 f0 44 00       	push   $0x44f018
43f15b:	c7 44 24 4c 00 00 00 	movl   $0x0,0x4c(%esp)
43f162:	00
43f163:	89 4c 24 50          	mov    %ecx,0x50(%esp)
43f167:	c7 44 24 54 00 00 00 	movl   $0x0,0x54(%esp)
43f16e:	00
43f16f:	e8 cc 57 fd ff       	call   0x414940
43f174:	8b 4c 24 64          	mov    0x64(%esp),%ecx
43f178:	5f                   	pop    %edi
43f179:	5e                   	pop    %esi
43f17a:	5b                   	pop    %ebx